1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-06 07:49:08 +03:00

Support assignment to subfields of composite columns in UPDATE and INSERT.

As a side effect, cause subscripts in INSERT targetlists to do something
more or less sensible; previously we evaluated such subscripts and then
effectively ignored them.  Another side effect is that UPDATE-ing an
element or slice of an array value that is NULL now produces a non-null
result, namely an array containing just the assigned-to positions.
This commit is contained in:
Tom Lane
2004-06-09 19:08:20 +00:00
parent 3a0df651da
commit 7e64dbc6b5
27 changed files with 1468 additions and 574 deletions

View File

@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
* $PostgreSQL: pgsql/src/include/nodes/nodes.h,v 1.156 2004/05/26 13:57:02 momjian Exp $
* $PostgreSQL: pgsql/src/include/nodes/nodes.h,v 1.157 2004/06/09 19:08:18 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -110,6 +110,7 @@ typedef enum NodeTag
T_SubLink,
T_SubPlan,
T_FieldSelect,
T_FieldStore,
T_RelabelType,
T_CaseExpr,
T_CaseWhen,
@@ -143,6 +144,7 @@ typedef enum NodeTag
T_BoolExprState,
T_SubPlanState,
T_FieldSelectState,
T_FieldStoreState,
T_CaseExprState,
T_CaseWhenState,
T_ArrayExprState,
@@ -274,7 +276,7 @@ typedef enum NodeTag
T_A_Const,
T_FuncCall,
T_A_Indices,
T_ExprFieldSelect,
T_A_Indirection,
T_ResTarget,
T_TypeCast,
T_SortBy,