Python处理MySQL与SQLite数据库详解

 更新时间:2025年02月05日 09:35:48   作者:aiweker  
在数据处理和存储方面,数据库扮演着至关重要的角色,Python提供了多种与数据库交互的方式,本文主要介绍了如何对MySQL与SQLite数据库进行增删改查操作,需要的可以了解下

在数据处理和存储方面,数据库扮演着至关重要的角色。Python提供了多种与数据库交互的方式,其中pymysql库用于连接和操作MySQL数据库,而SQLite则是一种轻量级的嵌入式数据库,Python标准库中的sqlite3模块即可满足操作需求。本文将为入门者介绍MySQL和SQLite,并分别展示如何使用Python进行增删改查操作。

1. MySQL 简介

MySQL是一种开源的关系型数据库管理系统(RDBMS),广泛应用于各种Web应用。它支持标准的SQL语言,提供了高性能、高可靠性和可扩展性。

安装pymysql

在Python中操作MySQL数据库,需要先安装pymysql库。可以使用pip进行安装:

pip install pymysql

1.1 连接MySQL数据库

import pymysql

# 创建数据库连接
connection = pymysql.connect(
    host='localhost',  # 数据库主机地址
    user='your_username',  # 数据库用户名
    password='your_password',  # 数据库密码
    database='your_database'  # 数据库名称
)

# 创建游标对象
cursor = connection.cursor()

1.2 增加数据(Insert)

try:
    # SQL插入语句
    sql = "INSERT INTO your_table (column1, column2) VALUES (%s, %s)"
    val = ("value1", "value2")
    
    # 执行SQL语句
    cursor.execute(sql, val)
    
    # 提交事务
    connection.commit()
    print("插入成功")
except Exception as e:
    print("插入失败:", e)
    # 回滚事务
    connection.rollback()
finally:
    # 关闭游标和连接
    cursor.close()
    connection.close()

1.3 查询数据(Select)

try:
    # SQL查询语句
    sql = "SELECT * FROM your_table"
    
    # 执行SQL语句
    cursor.execute(sql)
    
    # 获取所有记录
    results = cursor.fetchall()
    
    for row in results:
        print(row)
except Exception as e:
    print("查询失败:", e)
finally:
    # 关闭游标和连接
    cursor.close()
    connection.close()

1.4 更新数据(Update)

try:
    # SQL更新语句
    sql = "UPDATE your_table SET column1 = %s WHERE column2 = %s"
    val = ("new_value1", "value2")
    
    # 执行SQL语句
    cursor.execute(sql, val)
    
    # 提交事务
    connection.commit()
    print("更新成功")
except Exception as e:
    print("更新失败:", e)
    # 回滚事务
    connection.rollback()
finally:
    # 关闭游标和连接
    cursor.close()
    connection.close()

1.5 删除数据(Delete)

try:
    # SQL删除语句
    sql = "DELETE FROM your_table WHERE column1 = %s"
    val = ("value1",)
    
    # 执行SQL语句
    cursor.execute(sql, val)
    
    # 提交事务
    connection.commit()
    print("删除成功")
except Exception as e:
    print("删除失败:", e)
    # 回滚事务
    connection.rollback()
finally:
    # 关闭游标和连接
    cursor.close()
    connection.close()

2. SQLite 简介

SQLite是一种轻量级的嵌入式数据库,它不需要单独的服务器进程,非常适合在本地存储数据。SQLite支持标准的SQL语法,并且Python标准库中的sqlite3模块可以直接操作SQLite数据库。

2.1 连接SQLite数据库

import sqlite3

# 创建数据库连接(如果数据库文件不存在会自动创建)
connection = sqlite3.connect('your_database.db')

# 创建游标对象
cursor = connection.cursor()

2.2 增加数据(Insert)

try:
    # SQL插入语句
    sql = "INSERT INTO your_table (column1, column2) VALUES (?, ?)"
    val = ("value1", "value2")
    
    # 执行SQL语句
    cursor.execute(sql, val)
    
    # 提交事务
    connection.commit()
    print("插入成功")
except sqlite3.Error as e:
    print("插入失败:", e)
finally:
    # 关闭游标和连接
    cursor.close()
    connection.close()

2.3 查询数据(Select)

try:
    # SQL查询语句
    sql = "SELECT * FROM your_table"
    
    # 执行SQL语句
    cursor.execute(sql)
    
    # 获取所有记录
    results = cursor.fetchall()
    
    for row in results:
        print(row)
except sqlite3.Error as e:
    print("查询失败:", e)
finally:
    # 关闭游标和连接
    cursor.close()
    connection.close()

2.4 更新数据(Update)

try:
    # SQL更新语句
    sql = "UPDATE your_table SET column1 = ? WHERE column2 = ?"
    val = ("new_value1", "value2")
    
    # 执行SQL语句
    cursor.execute(sql, val)
    
    # 提交事务
    connection.commit()
    print("更新成功")
except sqlite3.Error as e:
    print("更新失败:", e)
finally:
    # 关闭游标和连接
    cursor.close()
    connection.close()

2.5 删除数据(Delete)

try:
    # SQL删除语句
    sql = "DELETE FROM your_table WHERE column1 = ?"
    val = ("value1",)
    
    # 执行SQL语句
    cursor.execute(sql, val)
    
    # 提交事务
    connection.commit()
    print("删除成功")
except sqlite3.Error as e:
    print("删除失败:", e)
finally:
    # 关闭游标和连接
    cursor.close()
    connection.close()

通过以上步骤,你可以轻松地使用Python对MySQL和SQLite数据库进行增删改查操作。

以上就是Python处理MySQL与SQLite数据库详解的详细内容,更多关于Python处理MySQL与SQLite的资料请关注脚本之家其它相关文章!

相关文章

  • python实现的希尔排序算法实例

    python实现的希尔排序算法实例

    这篇文章主要介绍了python实现的希尔排序算法,实例分析了基于Python实现希尔排序的相关技巧,需要的朋友可以参考下
    2015-07-07
  • Python使用win32com.client模块实现xls转xlsx自动化的方法

    Python使用win32com.client模块实现xls转xlsx自动化的方法

    在日常办公和数据处理中,我们经常会遇到老式的.xls格式Excel文件,这类文件兼容性差、容量有限,且无法支持Excel新版本的部分功能,手动逐个转换格式费时费力,今天就给大家分享一个实用技巧,使用Python的win32com.client模块,需要的朋友可以参考下
    2026-05-05
  • Python import与from import使用及区别介绍

    Python import与from import使用及区别介绍

    Python程序可以调用一组基本的函数(即内建函数),比如print()、input()和len()等函数。接下来通过本文给大家介绍Python import与from import使用及区别介绍,感兴趣的朋友一起看看吧
    2018-09-09
  • python得到qq句柄,并显示在前台的方法

    python得到qq句柄,并显示在前台的方法

    今天小编就为大家分享一篇python得到qq句柄,并显示在前台的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • PyTorch高级教程之自定义模型、数据加载及设备间数据移动

    PyTorch高级教程之自定义模型、数据加载及设备间数据移动

    在深入理解了PyTorch的核心组件之后,我们将进一步学习一些高级主题,包括如何自定义模型、加载自定义数据集,以及如何在设备(例如CPU和GPU)之间移动数据,需要的朋友可以参考下
    2023-07-07
  • Python实现图像尺寸和格式转换处理的示例详解

    Python实现图像尺寸和格式转换处理的示例详解

    这篇文章主要为大家详细介绍了如何利用Python实现图像尺寸获取和格式转换处理的功能,文中的示例代码讲解详细,感兴趣的可以了解一下
    2023-04-04
  • Python实现的多进程和多线程功能示例

    Python实现的多进程和多线程功能示例

    这篇文章主要介绍了Python实现的多进程和多线程功能,结合实例形式分析了Python多线程与多进程实现分布式系统功能相关操作技巧,需要的朋友可以参考下
    2018-05-05
  • Python随机验证码生成和join 字符串的问题解析

    Python随机验证码生成和join 字符串的问题解析

    Python中有join()和os.path.join()两个函数,join是将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串而os.path.join(): 将多个路径组合后返回,本文给大家介绍的非常详细,需要的朋友一起看看吧
    2022-04-04
  • pytorch 中的dim的作用范围详解

    pytorch 中的dim的作用范围详解

    ptorch中的dim类似于numpy纵的axis,这篇文章给大家介绍pytorch 中的dim的作用范围,不同的运算, dim 的作用域都是一样的思想,本文给大家介绍的非常详细,需要的朋友参考下吧
    2023-12-12
  • python中eval的用法及说明

    python中eval的用法及说明

    这篇文章主要介绍了python中eval的用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-09-09

最新评论