H2 数据库 - 主键冲突替换

H2 Database - on primary key conflict replace

如果插入的条目与具有相同 PRIMARY KEY 或 UNIQUE 值的另一条记录冲突,我想让 H2 数据库引擎替换冲突的条目。

我可以在 SQLite 中使用以下方法执行相同的操作:

CREATE TABLE Whosebug(FOO TEXT IDENTITY ON CONFLICT REPLACE);

这在 SQLite 中称为 conflict clause

我可以在 H2 SQL 方言中复制这种行为吗?

这可以通过使用 MERGE INTO 语句来实现,在我的例子中,我可以将 INSERT 语句替换为 MERGE INTO:

MERGE INTO TABLE Whosebug('abc');
MERGE INTO TABLE Whosebug('abc'); -- will not fail