写在前面:
学完pymsql后,经常用java的我留下了累死的泪水。主要还是java没用按名称传参,得一个个set。
主要是用起来太简单了吧。不过还是得记住语法,所以写下这个文章,方便我查询。
学完pymsql后,经常用java的我留下了累死的泪水。主要还是java没用按名称传参,得一个个set。
主要是用起来太简单了吧。不过还是得记住语法,所以写下这个文章,方便我查询。
基础使用
导包
import pymysql
或者
from pymysql import Connect
创建连接
创建对象
一般不使用按位置传参
conn = Connect(形参)
参数介绍:
host
user
password
database
port
charset 编码
autocommit是否自动提交事务
创建游标
# 使用 cursor() 方法创建一个游标对象
cursor= conn.cursor()
执行语句
cursor.execute(sql语句)
DML
这个涉及事物。
要么执行完后,使用
conn.commit()
要么直接在连接的时候autocommit设置为true
DQL
查询的时候拿到数据是使用
fet = cursor.fetchall()
该数据类型是一个元组,遍历可以用
for i in fet
关闭连接
conn.close
预编译
和java一样也得有这个,防止sql注入
参数化查询
在执行sql的时候,用%s代表占位符。
select * from %s where id = %s
excute语句中sql后面传入参数
cursor.execute(sql,参数列表)
# 查询x_users表id等于1的值
tables = ("x_users", "1")
cursor.execute("select * from %s where id = %s " % tables)