diff options
Diffstat (limited to 'doc/src/sgml/ref/insert.sgml')
-rw-r--r-- | doc/src/sgml/ref/insert.sgml | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/doc/src/sgml/ref/insert.sgml b/doc/src/sgml/ref/insert.sgml index 7cd4577f1ea..233a48f4804 100644 --- a/doc/src/sgml/ref/insert.sgml +++ b/doc/src/sgml/ref/insert.sgml @@ -621,9 +621,9 @@ INSERT INTO employees_log SELECT *, current_timestamp FROM upd; expression is used to reference values originally proposed for insertion: <programlisting> - INSERT INTO distributors (did, dname) - VALUES (5, 'Gizmo transglobal'), (6, 'Associated Computing, inc') - ON CONFLICT (did) DO UPDATE SET dname = EXCLUDED.dname; +INSERT INTO distributors (did, dname) + VALUES (5, 'Gizmo transglobal'), (6, 'Associated Computing, inc') + ON CONFLICT (did) DO UPDATE SET dname = EXCLUDED.dname; </programlisting> </para> <para> @@ -633,8 +633,8 @@ INSERT INTO employees_log SELECT *, current_timestamp FROM upd; Example assumes a unique index has been defined that constrains values appearing in the <literal>did</literal> column: <programlisting> - INSERT INTO distributors (did, dname) VALUES (7, 'Redline GmbH') - ON CONFLICT (did) DO NOTHING; +INSERT INTO distributors (did, dname) VALUES (7, 'Redline GmbH') + ON CONFLICT (did) DO NOTHING; </programlisting> </para> <para> @@ -644,16 +644,16 @@ INSERT INTO employees_log SELECT *, current_timestamp FROM upd; used to limit the rows actually updated (any existing row not updated will still be locked, though): <programlisting> - -- Don't update existing distributors based in a certain ZIP code - INSERT INTO distributors AS d (did, dname) VALUES (8, 'Anvil Distribution') - ON CONFLICT (did) DO UPDATE - SET dname = EXCLUDED.dname || ' (formerly ' || d.dname || ')' - WHERE d.zipcode != '21201'; - - -- Name a constraint directly in the statement (uses associated - -- index to arbitrate taking the DO NOTHING action) - INSERT INTO distributors (did, dname) VALUES (9, 'Antwerp Design') - ON CONFLICT ON CONSTRAINT distributors_pkey DO NOTHING; +-- Don't update existing distributors based in a certain ZIP code +INSERT INTO distributors AS d (did, dname) VALUES (8, 'Anvil Distribution') + ON CONFLICT (did) DO UPDATE + SET dname = EXCLUDED.dname || ' (formerly ' || d.dname || ')' + WHERE d.zipcode <> '21201'; + +-- Name a constraint directly in the statement (uses associated +-- index to arbitrate taking the DO NOTHING action) +INSERT INTO distributors (did, dname) VALUES (9, 'Antwerp Design') + ON CONFLICT ON CONSTRAINT distributors_pkey DO NOTHING; </programlisting> </para> <para> @@ -664,11 +664,11 @@ INSERT INTO employees_log SELECT *, current_timestamp FROM upd; <literal>is_active</literal> boolean column evaluates to <literal>true</literal>: <programlisting> - -- This statement could infer a partial unique index on "did" - -- with a predicate of "WHERE is_active", but it could also - -- just use a regular unique constraint on "did" - INSERT INTO distributors (did, dname) VALUES (10, 'Conrad International') - ON CONFLICT (did) WHERE is_active DO NOTHING; +-- This statement could infer a partial unique index on "did" +-- with a predicate of "WHERE is_active", but it could also +-- just use a regular unique constraint on "did" +INSERT INTO distributors (did, dname) VALUES (10, 'Conrad International') + ON CONFLICT (did) WHERE is_active DO NOTHING; </programlisting> </para> </refsect1> |