发生约束冲突异常时使用java
我在自动提交关闭的情况下使用jdbc。我有一个具有唯一索引的表。约束冲突异常是否可能发生在连接#提交而不是PreparetStatement#执行上
在我的例子(Oracle)中,它总是发生在“执行”上。 它依赖于数据库吗
你可以在下面搜索框中键入要查询的问题!
我在自动提交关闭的情况下使用jdbc。我有一个具有唯一索引的表。约束冲突异常是否可能发生在连接#提交而不是PreparetStatement#执行上
在我的例子(Oracle)中,它总是发生在“执行”上。 它依赖于数据库吗
# 1 楼答案
通常,约束是在执行命令时计算的,而不是在提交时
但是SQL有一个特性,可以将约束定义为可延迟的:这样完整性检查就可以延迟到事务完成时
在Oracle中,这种行为可以通过约束定义中的DEFERRABLE子句和SET CONSTRAINTS DEFERRED命令来实现