postgresql - How to upsert in Postgres on conflict on one of 2 columns? -
is possible upsert
in postgres 9.5 when conflict happens on 1 of 2 columns in table.? have 2 columns , if either column throws unique constraint violation, perform update operation.
yes, , behaviour default. unique constraint violation constitutes conflict , update
performed if on conflict update
specified. insert
statement can have single on conflict
clause, conflict_target
of clause can specify multiple column names each of must have index, such unique
constraint. are, however, limited single conflict_action
, not have information on constraint caused conflict when processing action. if need kind of information, or specific action depending on constraint violation, should write trigger function lose all-important atomicity of insert ... on conflict ...
statement.
Comments
Post a Comment