原因:
pymysql在连接数据库的时候会有一个参数autocommit,表示执行完sql语句是否自动提交到真正的数据库,默认为false,不自动提交,所以执行sql语句后提示成功,但实际没有操作数据库。
解决:
方法一:创建数据库连接对象时设置autocommit=true
1 message = { 2 "host":host, 3 "user":user, 4 "password":db_pwd, 5 "database":db_name, 6 "autocommit":true 7 } 8 db = pymysql.connect(**message) 9 return db
方法二:在每次执行sql后,显示提交
1 sql = "insert into users(id,name,age) values (1,'amy',13)" 2 cursor.execute(sql) #cursor为游标 3 db.commit() #db为数据库连接对象
如对本文有疑问, 点击进行留言回复!!
一步步教你用Prometheus搭建实时监控系统系列(一)——上帝之火,普罗米修斯的崛起
网友评论