下面是使用Python操作MySQL数据库的示例代码的完整攻略。
准备工作
在Python中操作MySQL数据库,需要先安装MySQL数据库驱动程序。常用的有两个库:pymysql
和mysql-connector-python
。这里以pymysql
为例,安装命令如下:
pip install pymysql
连接MySQL数据库
首先,需要使用Python代码连接到MySQL数据库。示例代码如下:
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='123456', database='testdb')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 执行 SQL 查询
cursor.execute("SELECT VERSION()")
# 获取一条数据库版本信息
data = cursor.fetchone()
print("Database version : %s " % data)
# 关闭数据库连接
db.close()
其中,db = pymysql.connect()
方法用于连接到数据库,需要传递参数host
、user
、password
和database
分别表示数据库的主机地址、用户名、密码和数据库名称。cursor()
方法创建一个游标对象,用于执行SQL语句。execute()
方法用于执行SQL查询语句,fetchone()
方法用于返回一条记录。最后需要用close()
方法关闭数据库连接。
执行SQL语句
连接到数据库之后,就可以执行SQL语句了。示例代码如下:
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='123456', database='testdb')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 执行 SQL 查询
cursor.execute("SELECT * FROM students")
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
sid = row[0]
name = row[1]
age = row[2]
sex = row[3]
print("id=%d,name=%s,age=%d,sex=%s" % (sid, name, age, sex))
# 关闭数据库连接
db.close()
以上代码实现了从MySQL数据库中查询表students
的所有记录,并输出记录中的字段值。
添加、修改、删除记录
除了查询记录之外,还可以使用Python操作MySQL数据库实现添加、修改和删除记录。示例代码如下:
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='123456', database='testdb')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 添加记录
sql = "INSERT INTO students(name,age,sex) VALUES('%s','%d','%s')" % ('Tom', 18, 'M')
try:
# 执行SQL语句
cursor.execute(sql)
# 提交操作
db.commit()
print("Add record success.")
except Exception as e:
# 发生错误时回滚
db.rollback()
print("Add record failed. Error: %s" % str(e))
# 修改记录
sql = "UPDATE students SET age='%d' WHERE name='%s'" % (20, 'Tom')
try:
# 执行SQL语句
cursor.execute(sql)
# 提交操作
db.commit()
print("Update record success.")
except Exception as e:
# 发生错误时回滚
db.rollback()
print("Update record failed. Error: %s" % str(e))
# 删除记录
sql = "DELETE FROM students WHERE name='%s'" % ('Tom')
try:
# 执行SQL语句
cursor.execute(sql)
# 提交操作
db.commit()
print("Delete record success.")
except Exception as e:
# 发生错误时回滚
db.rollback()
print("Delete record failed. Error: %s" % str(e))
# 关闭数据库连接
db.close()
以上代码实现了往表students
中添加一条记录,修改name
为Tom
的记录的age
字段为20,删除name
为Tom
的记录。其中,execute()
方法用于执行SQL语句,commit()
方法用于提交操作,rollback()
方法用于回滚操作。添加、修改、删除记录都需要执行相应的SQL语句,并在执行完成之后提交或回滚操作。
以上就是Python操作MySQL数据库的示例代码的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python操作MySQL数据库的示例代码 - Python技术站