当今互联网时代,数据处理已经成为了一个非常重要的任务。而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中,咱们能够运用INSERT
、DELETE
、UPDATE
和SELECT
句子来完成增删改查操作。在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
表中username
为Tom
的数据的密码。在履行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
表中username
为Tom
的数据。在履行execute
办法时,咱们相同运用了占位符%s
来表明参数。最终,咱们获取了成果集,并封闭了游标和衔接。
批量操作
在MySQL中,咱们能够运用INSERT
、DELETE
、UPDATE
和SELECT
句子来批量操作数据。在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()