等同于 DB2 中的 ignore_dup_row

Equivalent for ignore_dup_row in DB2

我有一个 DB2 存储过程和触发器正在执行一组 insertions.Some 这些插入语句可能已经存在于 table 中。我试图避免在每次插入之前检查该行,因为我认为这可能会增加处理开销。 我正在尝试找出由 Sybase 提供的 'ignore_dup_row' 索引属性的 DB2 等价物。如果没有 DB2 等效项,那么在尝试执行重复插入时还有哪些可行的选项可以忽略事务回滚。

使用合并语句:

merge into t as x
using (
    values (...) -- new row
) y (c1, c2, ..., cn)
    on x.[key] = y.[key]
when not matched then
    insert (c1,c2,...cn) values (y.c1,y.c2,...y.cn);

如果要逐行插入行,您还可以在存储过程中包含“23505”的继续处理程序。