|
|
执行如上 SQL 发现一直报 ORA-00001: unique constraint (ENCRYPT.SYS_C007033) violated
原来是因为我理解错了 merge insert 的含义。 这是将 TEST2 的数据痛 TEST1 进行比对,如果 TEST1 中的数据满足 ON 的条件,那么会进行 update,否则会进行 insert. 因为 TEST1 中不符合条件的有两条,所以会依次执行 insert (1,2,3) 所以就冲突了。(相当于 insert 执行了两次)
|
|
执行如上 SQL 发现一直报 ORA-00001: unique constraint (ENCRYPT.SYS_C007033) violated
原来是因为我理解错了 merge insert 的含义。 这是将 TEST2 的数据痛 TEST1 进行比对,如果 TEST1 中的数据满足 ON 的条件,那么会进行 update,否则会进行 insert. 因为 TEST1 中不符合条件的有两条,所以会依次执行 insert (1,2,3) 所以就冲突了。(相当于 insert 执行了两次)