pymysql入门操作

277 阅读1分钟

安装第三方模块

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()