Python:连接Mysql数据库,增删改查以及参数化

基本步骤

  1. 导入pymysql包
  2. 创建数据库连接对象
  3. 获取游标对象
  4. 执行数据相关操作
  5. 关闭游标对象与数据库连接对象

查询数据

# 导包
import pymysql

# 创建数据库连接
conn = pymysql.connect(host="127.0.0.1", port=3306, user="root", password="123456", database="test", charset="utf8")
# 获取游标对象
cur = conn.cursor()

# 执行sql
sql = "select * from salary;"
cur.execute(sql)
# 获取数据
data = cur.fetchall()
print(data)

# 关闭游标对象 与 数据库连接对象
cur.close()
conn.close()

修改数据:增删改

数据修改与数据查询的方式及其类似,区别就是需要调用.commit()方法数据变更才能真实有效。以下为数据插入,删除与修改类似

# 导包
import pymysql

# 创建数据库连接
conn = pymysql.connect(host="127.0.0.1", port=3306, user="root", password="123456", database="test", charset="utf8")
# 获取游标对象
cur = conn.cursor()

# 执行sql
sql = "INSERT INTO test.salary(name, price, company_name) VALUES('东方炸弹', 30000.00, '华为');"
cur.execute(sql)

# 提交数据更改
conn.commit()

# 关闭游标对象 与 数据库连接对象
cur.close()
conn.close()

SQL语句参数化:防止SQL注入

构造参数列表,并且执行时传入参数即可

# 导包
import pymysql

# 创建数据库连接
conn = pymysql.connect(host="127.0.0.1", port=3306, user="root", password="123456", database="test", charset="utf8")
# 获取游标对象
cur = conn.cursor()

# 构造参数列表
params = [" or 1 or "]

# 执行sql,添加对应参数
sql = "select * from salary where name = %s;"
cur.execute(sql, params)
# 获取数据
data = cur.fetchall()
print(data)

# 关闭游标对象 与 数据库连接对象
cur.close()
conn.close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值