当前位置: 代码网 > it编程>前端脚本>Python > Python处理MySQL与SQLite数据库详解

Python处理MySQL与SQLite数据库详解

2025年02月13日 Python 我要评论
在数据处理和存储方面,数据库扮演着至关重要的角色。python提供了多种与数据库交互的方式,其中pymysql库用于连接和操作mysql数据库,而sqlite则是一种轻量级的嵌入式数据库,python

在数据处理和存储方面,数据库扮演着至关重要的角色。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的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com