当今互联网时代,数据处理已经成为了一个非常重要的任务。而MySQL作为一款开源的关系型数据库,被广泛应用于各种场景。本篇博客将介绍怎么运用Python操作MySQL的各种功用,以及一些高级用法。

衔接MySQL

在Python中,咱们能够运用pymysql库来衔接MySQL数据库。

import pymysql
# 衔接MySQL
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 履行SQL句子
cursor.execute('SELECT * FROM users')
# 获取成果集
result = cursor.fetchall()
print(result)
# 封闭游标和衔接
cursor.close()
conn.close()

以上代码中,咱们首要运用pymysql库衔接了MySQL数据库,并获取了游标。然后,咱们履行了一个简略的SELECT句子,并获取了成果集。最终,咱们封闭了游标和衔接。

增删改查

在MySQL中,咱们能够运用INSERTDELETEUPDATESELECT句子来完成增删改查操作。在Python中,咱们相同能够运用pymysql库来履行这些操作。

刺进数据

import pymysql
# 衔接MySQL
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 刺进数据
sql = "INSERT INTO users(username, password) VALUES (%s, %s)"
params = ('Tom', '123456')
cursor.execute(sql, params)
# 提交业务
conn.commit()
# 封闭游标和衔接
cursor.close()
conn.close()

以上代码中,咱们运用INSERT句子向users表中刺进了一条数据。在履行execute办法时,咱们能够运用占位符%s来表明参数,然后在履行时传入对应的参数。最终,咱们提交了业务,并封闭了游标和衔接。

删去数据

import pymysql
# 衔接MySQL
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 删去数据
sql = "DELETE FROM users WHERE id = %s"
params = (1,)
cursor.execute(sql, params)
# 提交业务
conn.commit()
# 封闭游标和衔接
cursor.close()
conn.close()

以上代码中,咱们运用DELETE句子删去了users表中id为1的数据。在履行execute办法时,咱们相同运用了占位符%s来表明参数。最终,咱们提交了业务,并封闭了游标和衔接。

更新数据

import pymysql
# 衔接MySQL
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 更新数据
sql = "UPDATE users SET password = %s WHERE username = %s"
params = ('654321', 'Tom')
cursor.execute(sql, params)
# 提交业务
conn.commit()
# 封闭游标和衔接
cursor.close()
conn.close()

以上代码中,咱们运用UPDATE句子更新了users表中usernameTom的数据的密码。在履行execute办法时,咱们相同运用了占位符%s来表明参数。最终,咱们提交了业务,并封闭了游标和衔接。

查询数据

import pymysql
# 衔接MySQL
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 查询数据
sql = "SELECT * FROM users WHERE username = %s"
params = ('Tom',)
cursor.execute(sql, params)
# 获取成果集
result = cursor.fetchall()
print(result)
# 封闭游标和衔接
cursor.close()
conn.close()

以上代码中,咱们运用SELECT句子查询了users表中usernameTom的数据。在履行execute办法时,咱们相同运用了占位符%s来表明参数。最终,咱们获取了成果集,并封闭了游标和衔接。

批量操作

在MySQL中,咱们能够运用INSERTDELETEUPDATESELECT句子来批量操作数据。在Python中,咱们相同能够运用pymysql库来批量操作数据。

批量刺进数据

import pymysql
# 衔接MySQL
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 批量刺进数据
sql = "INSERT INTO users(username, password) VALUES (%s, %s)"
params = [('Tom', '123456'), ('Jerry', '654321'), ('Alice', '111111')]
cursor.executemany(sql, params)
# 提交业务
conn.commit()
# 封闭游标和衔接
cursor.close()
conn.close()

以上代码中,咱们运用executemany办法批量刺进了多条数据。在履行executemany办法时,咱们运用了一个元组列表来表明多个参数。最终,咱们提交了业务,并封闭了游标和衔接。

批量删去数据

import pymysql
# 衔接MySQL
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 批量删去数据
sql = "DELETE FROM users WHERE id = %s"
params = [(1,), (2,), (3,)]
cursor.executemany(sql, params)
# 提交业务
conn.commit()
# 封闭游标和衔接
cursor.close()
conn.close()

以上代码中,咱们运用executemany办法批量删去了多条数据。在履行executemany办法时,咱们相同运用了一个元组列表来表明多个参数。最终,咱们提交了业务,并封闭了游标和衔接。

批量更新数据

import pymysql
# 衔接MySQL
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 获取游标
cursor = conn.cursor()
# 批量更新数据
sql = "UPDATE users SET password = %s WHERE username = %s"
params = [('123456', 'Tom'), ('654321', 'Jerry'), ('111111', 'Alice')]
cursor.executemany(sql, params)
# 提交业务
conn.commit()
# 封闭游标和衔接
cursor.close()
conn.close()