支持版本
根据以上@klin的评论,
ON CONFLICT仅 PostgreSQL 9.5及 更高版本支持。
独特的约束
在添加唯一索引
activity_name。目前,该列上没有任何约束,因此该列上没有冲突的可能性。
CREATE UNIQUE INDEX UK_config_activity_log__activity_name ON config_activity_log (activity_name);
但是,如果您不希望该列是唯一的,那么您打算遇到什么冲突/您希望通过该
on conflict*** 作解决的问题是什么?
请参阅https://www.postgresql.org/docs/9.5/static/sql-insert.html#SQL-ON-
CONFLICT中的flict_target
另一种语法是修改您的create语句,以在其中包含唯一条件。例如
CREATE TABLE IF NOT EXISTS config_activity_log( idserial primary key, activity_namevarchar(100) NOT NULL UNIQUE, last_config_version varchar(50) NOT NULL, activity_status varchar(100) NOT NULL DEFAULT 'Awaiting for cofman', cofman_last_update bigint NOT NULL DEFAULT -1, is_error boolean DEFAULT FALSE, activity_timestamp timestamp DEFAULT current_timestamp);
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)