如果语句失败,SQLite是否会自动回滚?

彼得

这里有关于sqlite的文档:https : //www.sqlite.org/lang_transaction.html,在我遇到类似情况时,它什么也不会说:

BEGIN;
INSERT INTO a (x, y) VALUES (0, 0);
INSERT INTO b (x, y) VALUES (1, 2); -- line 3 error here, b doesn't have column x
COMMIT;

在这种情况下会发生什么?如果第3行出现错误,它会提交还是回滚?我希望能够自动回滚,但是我想对此有所确定。

CL。

SQL语句是单独执行的。

当一条语句失败时,该单个语句的所有影响都会回滚,但是事务保持打开状态并处于活动状态。当应用程序收到错误代码时,它必须决定是否要回滚该事务,重试或执行其他操作。

如果您使用的是执行多个SQL语句的函数,则不会发生任何变化。效果与您执行所有语句直到失败的语句相同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如果飞行通道迁移失败,那么alter语句是否会回滚?

Hibernate / JPA:如果@Transactional失败,是否会回滚嵌套刷新?

如果取消,T-SQL事务是否会回滚?

如果服务无法启动,是否可以自动回滚快照?

为什么在INSERT INTO失败时我的事务会自动回滚?

如果使用准备好的语句多个插入之一失败,则回滚

SQL Server是否会自动回滚连接丢失时的更改?

如果某个进程意外终止,则SqlTransaction或TransactionScope下的事务是否会回滚?

如果在提交时抛出异常,C# TransactionScope 是否会回滚?

数据存储:失败的事务和回滚:如果没有调用回滚或回滚失败会发生什么?

回滚会自动在Postgres中结束交易吗

自动回滚多条语句的隐式事务?

如果不在Hibernate中回滚事务会怎样?

当堆栈创建/更新失败时,如何验证云形成堆栈是否启用了自动回滚?

如果转换失败,则进行T-SQL回滚

如果一个事务在多个事务到不同的表之间失败,则在休眠中是否可以回滚?

SQlite:在脚本创建表期间失败不会回滚

MySQL 存储过程回滚第一个 If-else 语句,如果第二个 if-else 语句失败

Kubernetes自动回滚

是否可以在竹子中进行自动回滚

如果部署后检查失败,部署是否会回滚到上次部署的构建?

Spring Kafka批处理侦听器是否以批处理模式提交db事务,并且在失败的情况下会回滚整个事务?

Windows-10自动更新->重启失败是否常见?除了回滚更新之外,还有其他解决方案吗?

@transaction-回滚失败

禁用自动回滚执行

当存储过程中的任何一条insert语句失败时,回滚整个txn

mysqli事务插入失败回滚失败

如果一次更新失败,我如何回滚所有内容?

节点-如果一个查询失败,则Mysql事务不会回滚