安装第三方模块
pip install pymysql
导包
import pymysql
创建连接
conn = pymysql.connect(
host='',
user='root',
password='',
database='',
port=3306
)
创建游标
cursor = conn.cursor()
创建SQL语句
sql = 'select * from user'
执行SQL语句
resultRows = cursor.execute(sql) # 返回影响行数,结果封装在cursor中
# print(cursor._result.description)
# print(cursor._rows)((1, 'zs', 11, '[Boy(name=11, age=11), Boy(name=22, age=22), Boy(name=33, age=33)]'), (2, 'zs', 11, "[{name='11', age=11}, {name='22', age=22}, {name='33', age=33}]"), (3, 'zs', 11, "[{name='11', age=11}, {name='22', age=22}, {name='33', age=33}]"))
# res = cursor.fetchall()
# for val in res:
# print(val)
# (1, 'zs', 11, '[Boy(name=11, age=11), Boy(name=22, age=22), Boy(name=33, age=33)]')
# (2, 'zs', 11, "[{name='11', age=11}, {name='22', age=22}, {name='33', age=33}]")
# (3, 'zs', 11, "[{name='11', age=11}, {name='22', age=22}, {name='33', age=33}]")
# res = cursor.fetchmany(2) 返回前几个 ((1, 'zs', 11, '[Boy(name=11, age=11), Boy(name=22, age=22), Boy(name=33, age=33)]'), (2, 'zs', 11, "[{name='11', age=11}, {name='22', age=22}, {name='33', age=33}]"))
# print(res)
# res = cursor.fetchone()
# print(res)
print(cursor.fetchone())#(1, 'zs', 11, '[Boy(name=11, age=11), Boy(name=22, age=22), Boy(name=33, age=33)]')
print(cursor.fetchone())#(2, 'zs', 11, "[{name='11', age=11}, {name='22', age=22}, {name='33', age=33}]")
print(cursor.fetchone())#(3, 'zs', 11, "[{name='11', age=11}, {name='22', age=22}, {name='33', age=33}]")
SQL防注入
# sql语句 使用%s,占位
sql = 'select * from user where id = %s'
cursor.execute(sql,[1])# :type args: tuple, list or dict
print(cursor.fetchone())
将修改操作提交到数据库
conn.commit()
回滚数据
conn.rollback()
关闭游标
cursor.close()
关闭连接
conn.close()