Python如何使用pymysql数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
1、准备数据库demo_temp
create database demo_temp;
2、连接数据库
import pymysql.cursors connect = pymysql.connect( host='127.0.0.1', user='root', password='123', db='demo_temp', charset='utf8', cursorclass=pymysql.cursors.DictCursor )
3、创建表
import pymysql.cursors # 连接数据库 connect = pymysql.connect( host='127.0.0.1', user='root', password='123', db='demo_temp', charset='utf8', cursorclass=pymysql.cursors.DictCursor ) # 创建表users with connect.cursor() as cursor: sql = """ CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT , user CHAR(30), passwd CHAR(20)) """ cursor.execute(sql) connect.close()
4、一个简单的增、删、改、查实例
import pymysql.cursors # 连接数据库 connect = pymysql.connect( host='127.0.0.1', user='root', password='123', db='demo_temp', charset='utf8', cursorclass=pymysql.cursors.DictCursor ) with connect.cursor() as cursor: # 创建游标 # 创建表 sql = """ CREATE TABLE users ( id INT PRIMARY KEY AUTO_INCREMENT , user CHAR(30), passwd CHAR(20)) """ cursor.execute(sql) # 向表中插入数据 sql = """ INSERT INTO users (user,passwd) VALUES ('小明','123') """ cursor.execute(sql) connect.commit() # 插入数据后必须更新 # 查询数据 sql = """ select * from users """ cursor.execute(sql) ret = cursor.fetchone() # 提取查询数据 print(ret) # 修改数据 sql = """ update users set user='葫芦娃' where id=1 """ cursor.execute(sql) # 再次查询数据 sql = """ select * from users """ cursor.execute(sql) ret = cursor.fetchone() # 提取查询数据 print(ret) connect.close() # 关闭数据库连接
打印内容如下
{'id': 1, 'user': '小明', 'passwd': '123'} {'id': 1, 'user': '葫芦娃', 'passwd': '123'}
5、简单的事务
import pymysql.cursors # 连接数据库 connect = pymysql.connect( host='127.0.0.1', user='root', password='123', db='demo_temp', charset='utf8', cursorclass=pymysql.cursors.DictCursor ) try: with connect.cursor() as cursor: # 创建游标 # 插入数据 sql = """ INSERT INTO users (user,passwd) VALUES ('11111','123') """ cursor.execute(sql) # 更新数据 sql_1 = """ update users set user='葫芦娃' where id=1 """ cursor.execute(sql_1) raise NameError # 更新数据时主动抛出异常 except Exception as e: connect.rollback() # 事务回滚 connect.commit() connect.close() # 关闭数据库连接
通过下面的小动画我们可以看出,这里模拟在更新数据时出现问题。而插入数据时没有问题的。然后执行事务回滚,最终数据没有被写入到数据库中。
关于Python如何使用pymysql数据库问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。