python对数据的增删改
执行增删改的sql语句的时候,比查询多一个事务的提交或者回滚。
当语句执行成功,执行提交事务
当语句执行失败,执行回滚事务
数据更新,删除,增加的流程图:
代码示例:
# 新增sql实例
import pymysql
con = None
cursor = None
try:
con = pymysql.connect(
host="xxx",
port=3306, user='root',
password='xxx',
database='xxx',
charset='utf8')
cursor = con.cursor()
sql = "insert into user(name,pwd,head_img)" \
" values('ceniu','asw22','1.png')"
cursor.execute(sql)
# 成功,提交事务
con.commit()
except Exception as err:
print('插入数据错误')
# 失败,回滚事务
con.rollback()
finally:
cursor.close()
con.close()
注意:
1用try except去捕获错误。当正确的时候执行提交事务,当失败的时候回滚事务。
2如果不提交或者回滚,对sql的改动不会反应到数据库中。
3 修改和删除的框架是一样的,只是sql语句不一样。
修改:update user set name=newName where id =1
删除: delete from user where id=1
值得注意的是:在实际开发中很少使用删除语句,通常通过修改某个代表删除的字段,表示这条数据已经删除。