pymysql:使用第三方库来完成对 MySQL数据库进行操作
1、安装pymysql
pip install pymysql
2、连接数据库
3、执行查询sql
返回结果是一个大元组,里面嵌套了很多小元组,一条数据一个小元组
如果查询结果只有一条数据,那么使用 fetchone() 方法接收数据。也是以元组的方式返回
4、 数据插入
事务提交设置,教程只讲了,python如何连接执行sql,事务处理没有讲。
from pymysql import Connection
conn = Connection(
host='localhost',
port=3306,
user='root',
password='root',
# autocommit=True 设置自动提交,---------------------------------
)
# 获取游标对象
cursor = conn.cursor()
conn.select_db("test") # 选择数据库
# 使用游标对象执行sql语句
cursor.execute("insert into course values('4-109','毛概','877')")
# 执行修改,删除,新增语句时,必须commit才会生效
conn.commit()
# 关闭连接
conn.close()
5、防止sql注入
使用普通字符拼接:
使用占位符,
自己拼接为什么有问题,就是引号问题嘛,利用引号让你判断失效。
使用这个方法。它会将你参数字符全部进行转义,所以sql注入就失效了
原本是:seect * from course where tno = ‘’ or 1 ‘’
现在直接将参数的 单引号进行转义