Split out MERGE and REPLACE/UPSERT items.

< * Add MERGE command that does UPDATE/DELETE, or on failure, INSERT (rules,
<   triggers?)
> * Add SQL-standard MERGE command, typically used to merge two tables
>
>   This is similar to UPDATE, then for unmatched rows, INSERT.
>   Whether concurrent access allows modifications which could cause
>   row loss is implementation independent.
>
> * Add REPLACE or UPSERT command that does UPDATE, or on failure, INSERT
This commit is contained in:
Bruce Momjian 2005-12-01 22:07:59 +00:00
parent 8c8c0108e8
commit 24e1a04591
2 changed files with 15 additions and 6 deletions

View File

@ -2,7 +2,7 @@
PostgreSQL TODO List
====================
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
Last updated: Mon Nov 28 21:02:36 EST 2005
Last updated: Thu Dec 1 17:07:44 EST 2005
The most recent version of this document can be viewed at
http://www.postgresql.org/docs/faqs.TODO.html.
@ -369,8 +369,13 @@ SQL Commands
information.
* Add a GUC variable to warn about non-standard SQL usage in queries
* Add MERGE command that does UPDATE/DELETE, or on failure, INSERT (rules,
triggers?)
* Add SQL-standard MERGE command, typically used to merge two tables
This is similar to UPDATE, then for unmatched rows, INSERT.
Whether concurrent access allows modifications which could cause
row loss is implementation independent.
* Add REPLACE or UPSERT command that does UPDATE, or on failure, INSERT
To implement this cleanly requires that the table have a unique index
so duplicate checking can be easily performed. It is possible to

View File

@ -8,7 +8,7 @@
<body bgcolor="#FFFFFF" text="#000000" link="#FF0000" vlink="#A00000" alink="#0000FF">
<h1><a name="section_1">PostgreSQL TODO List</a></h1>
<p>Current maintainer: Bruce Momjian (<a href="mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</a>)<br/>
Last updated: Mon Nov 28 21:02:36 EST 2005
Last updated: Thu Dec 1 17:07:44 EST 2005
</p>
<p>The most recent version of this document can be viewed at<br/>
<a href="http://www.postgresql.org/docs/faqs.TODO.html">http://www.postgresql.org/docs/faqs.TODO.html</a>.
@ -339,8 +339,12 @@ first.
information.
</p>
</li><li>Add a GUC variable to warn about non-standard SQL usage in queries
</li><li>Add MERGE command that does UPDATE/DELETE, or on failure, INSERT (rules,
triggers?)
</li><li>Add SQL-standard MERGE command, typically used to merge two tables
<p> This is similar to UPDATE, then for unmatched rows, INSERT.
Whether concurrent access allows modifications which could cause
row loss is implementation independent.
</p>
</li><li>Add REPLACE or UPSERT command that does UPDATE, or on failure, INSERT
<p> To implement this cleanly requires that the table have a unique index
so duplicate checking can be easily performed. It is possible to
do it without a unique index if we require the user to LOCK the table