python 代码执行sql的update的SQL语句,用try except判断执行是否异常,如果异常,数据库执行回滚
时间: 2024-05-01 21:17:57 浏览: 104
python操作MySQL 模拟简单银行转账操作
可以使用以下代码来执行 SQL 的 update 语句,并且在异常情况下进行回滚操作:
```python
import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
try:
cursor.execute("UPDATE table_name SET col1 = val1, col2 = val2 WHERE condition")
# 提交事务
conn.commit()
except Exception as e:
# 打印异常信息
print('Error:', e)
# 回滚事务
conn.rollback()
finally:
# 关闭数据库连接
conn.close()
```
以上代码中,我们首先创建了一个连接到数据库的连接对象 `conn`,然后通过 `conn.cursor()` 方法来创建一个游标对象 `cursor`,用于执行 SQL 语句。
在执行 SQL 语句时,我们使用了 `try-except` 的语法结构,以捕获在执行 SQL 语句时可能出现的异常。如果执行 SQL 语句成功,则通过 `conn.commit()` 方法提交事务,使得修改的数据被永久保存在数据库中。而如果执行 SQL 语句失败,则会跳转到 `except` 块中执行回滚操作,以回退到上一个事务的状态。
最后,我们通过调用 `conn.close()` 方法来关闭数据库连接对象。
阅读全文