Doc: call out UPDATE syntax change as a v10 compatibility issue.
authorTom Lane
Mon, 30 Oct 2017 20:44:26 +0000 (16:44 -0400)
committerTom Lane
Mon, 30 Oct 2017 20:44:26 +0000 (16:44 -0400)
The change made by commit 906bfcad7 means that if you're writing
a parenthesized column list in UPDATE ... SET, but that column list
is only one column, you now need to write ROW(expression) on the
righthand side, not just a parenthesized expression.  This was an
intentional change for spec compatibility and potential future
expansion of the possibilities for the RHS, but I'd neglected to
document it as a compatibility issue, figuring that hardly anyone
would bother with parenthesized syntax for a single target column.
I was wrong, as shown by questions from Justin Pryzby, Adam Brusselback,
and others.  Move the release note item into the compatibility section
and point out the behavior change for a single target column.

Discussion: https://postgr.es/m/CAMjNa7cDLzPcs0xnRpkvqmJ6Vb6G3EH8CYGp9ZBjXdpFfTz6dg@mail.gmail.com

doc/src/sgml/release-10.sgml

index d37f700055ceb542159d1ca976e143d7e0a598b4..906b3814f7b262d78aaf642e8935ea9bf879e3c6 100644 (file)
 
     
 
+     
+      Use standard row constructor syntax in UPDATE ... SET
+      (column_list) = row_constructor
+      (Tom Lane)
+     
+
+     
+      The row_constructor can now begin with the
+      keyword ROW; previously that had to be omitted.
+      If just one column name appears in
+      the column_list, then
+      the row_constructor now must use
+      the ROW keyword, since otherwise it is not a valid
+      row constructor but just a parenthesized expression.
+      Also, an occurrence
+      of table_name.* within
+      the row_constructor is now expanded into
+      multiple columns, as occurs in other uses
+      of row_constructors.
+     
+    
+
+    
+
      
 
      
 
-      
-       Allow standard row constructor syntax in UPDATE ... SET
-       (column_list) = row_constructor
-       (Tom Lane)
-      
-
-      
-       The row_constructor can now begin with the
-       keyword ROW; previously that had to be omitted.  Also,
-       an occurrence of table_name.*
-       within the row_constructor is now expanded into
-       multiple columns, as in other uses
-       of row_constructors.
-      
-     
-
-     
-