1.增、删、改
# 导入模块 import pymysql # 建立连接 conn = pymysql.connect( host='127.0.0.1', # 地址 port=3306, # 端口号 user='root', # 用户名 password='fuqian1314', # 密码 db='db1', # 数据库名 charset='utf8' # 编码格式 ) # 拿到游标 cursor = conn.cursor() sql = 'insert into table1(name,age) values (%s,%s)' # sql语句 cursor.execute(sql, ('eee', 33)) # 将数据对应上方的字段插入到表格中 conn.commit() # 增、删、改的时候需要这个语句。 cursor.close() # 关闭游标 conn.close() # 关闭连接
插入多条记录:
cursor.executemany(sql, [('aaa', 44), ('sss', 55), ('fff', 66)])
获取自增id数目:(操作之前的)
print(cursor.lastrowid)
删除和修改只需要将sql语句替换成对应功能的sql语句就可以实现。
2.查
# 导入模块 import pymysql # 建立连接 conn = pymysql.connect( host='127.0.0.1', # 地址 port=3306, # 端口号 user='root', # 用户名 password='fuqian1314', # 密码 db='db1', # 数据库名 charset='utf8' # 编码格式 ) # 拿到游标 cursor = conn.cursor(pymysql.cursors.DictCursor) # 以字典的形式的游标(查询出来的数据以字典的形式显示) sql = 'select * from table1;' # sql语句 cursor.execute(sql) print(cursor.fetchone()) # 依次打印一条记录 print(cursor.fetchone()) print(cursor.fetchone()) cursor.close() # 关闭游标 conn.close() # 关闭连接
结果:
# 导入模块 import pymysql # 建立连接 conn = pymysql.connect( host='127.0.0.1', # 地址 port=3306, # 端口号 user='root', # 用户名 password='fuqian1314', # 密码 db='db1', # 数据库名 charset='utf8' # 编码格式 ) # 拿到游标 cursor = conn.cursor(pymysql.cursors.DictCursor) # 以字典的形式的游标(查询出来的数据以字典的形式显示) sql = 'select * from table1;' # sql语句 cursor.execute(sql) print(cursor.fetchmany(3)) # 可以指定取几个记录 cursor.close() # 关闭游标 conn.close() # 关闭连接
结果:
# 导入模块 import pymysql # 建立连接 conn = pymysql.connect( host='127.0.0.1', # 地址 port=3306, # 端口号 user='root', # 用户名 password='fuqian1314', # 密码 db='db1', # 数据库名 charset='utf8' # 编码格式 ) # 拿到游标 cursor = conn.cursor(pymysql.cursors.DictCursor) # 以字典的形式的游标(查询出来的数据以字典的形式显示) sql = 'select * from table1;' # sql语句 cursor.execute(sql) print(cursor.fetchall()) # 取全部的数据。 cursor.close() # 关闭游标 conn.close() # 关闭连接
结果:
游标的移动:
# 导入模块 import pymysql # 建立连接 conn = pymysql.connect( host='127.0.0.1', # 地址 port=3306, # 端口号 user='root', # 用户名 password='fuqian1314', # 密码 db='db1', # 数据库名 charset='utf8' # 编码格式 ) # 拿到游标 cursor = conn.cursor(pymysql.cursors.DictCursor) # 以字典的形式的游标(查询出来的数据以字典的形式显示) sql = 'select * from table1;' # sql语句 cursor.execute(sql) print(cursor.fetchone()) # 取全部的数据。 cursor.scroll(3, mode='absolute') # 设置游标绝对位置。 print(cursor.fetchone()) # 取全部的数据。 cursor.scroll(1, mode='relative') # 设置游标相对位置。 print(cursor.fetchone()) # 取全部的数据。 cursor.close() # 关闭游标 conn.close() # 关闭连接
结果: