pymysql实现增删改查的操作指南
什么是pymysql
PyMySQL
是在 Python
3.x 版本中用于连接 MySQL
服务器的一个库,语言上几乎与 Python
自带的 mysql
连接库 MySQLdb
基本一致。PyMySQL
使用纯 Python
实现,它不需要编译就能够安装到 Python
解释器中。
安装PyMySQL
使用 pip
安装 PyMySQL
:
pip install pymysql
连接MySQL数据库
首先,我们需要使用 connect
函数来连接到 MySQL
数据库。
import pymysql
# 打开数据库连接
db = pymysql.connect("127.0.0.1", "root", "password", "testdb")
当然,这里需要替换成自己的数据库 IP 地址、用户名、密码、数据库名等信息。
执行SQL语句
使用 cursor
对象来执行 SQL
语句。
cursor = db.cursor()
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print("Database version : %s " % data)
查询数据
查询单条数据
使用 fetchone()
方法查询单条数据。
sql = "SELECT * FROM users WHERE id = %s"
cursor.execute(sql, ("1",))
data = cursor.fetchone()
print(data)
查询多条数据
使用 fetchall()
方法查询多条数据。
sql = "SELECT * FROM users WHERE age > %s"
cursor.execute(sql, ("20",))
data = cursor.fetchall()
for row in data:
print(row)
插入数据
sql = "INSERT INTO users (`name`, `age`) VALUES (%s, %s)"
values = ("Peter", "28")
cursor.execute(sql, values)
db.commit()
需要注意的是,插入数据之后需要调用 commit()
方法提交到数据库中。
更新数据
sql = "UPDATE users SET name = %s WHERE id = %s"
values = ("Peter Parker", "1")
cursor.execute(sql, values)
db.commit()
同样,更新数据之后也需要调用 commit()
方法提交到数据库中。
删除数据
sql = "DELETE FROM users WHERE id = %s"
cursor.execute(sql, ("1",))
db.commit()
删除数据同样需要调用 commit()
方法提交到数据库中。
示例说明
示例1:查询数据库中的所有数据
import pymysql
db = pymysql.connect("127.0.0.1", "root", "password", "testdb")
cursor = db.cursor()
sql = "SELECT * FROM users"
cursor.execute(sql)
data = cursor.fetchall()
for row in data:
print(row)
示例2:批量插入数据
import pymysql
db = pymysql.connect("127.0.0.1", "root", "password", "testdb")
cursor = db.cursor()
sql = "INSERT INTO users (`name`, `age`) VALUES (%s, %s)"
values = [("Tom", "22"), ("Jerry", "19"), ("Lucy", "21")]
cursor.executemany(sql, values)
db.commit()
注意,批量插入使用 executemany()
方法,并将多个数据值传入 values
参数中。同时,最后也需要调用 commit()
方法提交到数据库中。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:pymysql实现增删改查的操作指南(python) - Python技术站