1.导包pymysql
2.连接数据库
3.获取游标
4.执行sql
5.关闭游标
6.关闭数据库连接
一、查询select操作不用提交事务
# 导包 import pymysql # 创建连接 # 1).连接到数据库(host:localhost user:root password:root database:books) conn = pymysql.connect(host="localhost", port=3306, user="root", password="root", database="books") # 获取游标 cursor = conn.cursor() # 执行sql # 2).查询图书表的数据(包括:图书id、图书名称、阅读量、评论量) sql = "select id, title, `read`, `comment` from t_book;" cursor.execute(sql) # 3).获取查询结果的总记录数 print("获取的查询结果记录行数为:", cursor.rowcount) # 4).获取查询结果的第一条数据 print(cursor.fetchone()) # 5).获取全部的查询结果 # 重置游标位置 cursor.rownumber = 0 print(cursor.fetchall()) # 关闭游标 cursor.close() # 关闭连接 conn.close()
二、新增数据注意最好是手动设置事务提交,不要自动设置autocommit=True
# 导包 import pymysql # 创建连接 # 1).连接到数据库(host:localhost user:root password:root database:books) conn = pymysql.connect(host="localhost", port=3306, user="root", password="root", database="books", autocommit=True) # 获取游标 cursor = conn.cursor() # 执行sql # 新增一条图书数据(id:4 title:西游记 pub_date:1986-01-01 ) sql = "insert into t_book(id, title, pub_date) values(4, '西游记', '1986-01-01');" cursor.execute(sql) # 3).获取受影响的结果记录数 print("影响的结果记录数为:", cursor.rowcount) # 关闭游标 cursor.close() # 关闭连接 conn.close()
三、修改数据注意最好是手动设置事务提交,不要自动设置autocommit=True
# 导包 import pymysql # 创建连接 conn = pymysql.connect(host="localhost", port=3306, user="root", password="root", database="books", autocommit=True) # 获取游标 cursor = conn.cursor() # 执行sql sql = "update t_book set title='东游记' where title = '西游记';" cursor.execute(sql) print(cursor.rowcount) conn.commit() except Exception as e: # 事务回滚 conn.rollback() # 打印异常信息 print(e) finally: # 关闭游标 cursor.close() # 关闭连接 conn.close()
ACID
autocommit=True
conn.commit()
conn.rollback()
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/207646.html原文链接:https://javaforall.net
