Thread: Re: [COMMITTERS] pgsql: Change the row constructor syntax (ROW(...))
Does this complete this TODO item? o Allow UPDATE tab SET ROW (col, ...) = (...) for updating multiple columns --------------------------------------------------------------------------- Tom Lane wrote: > Log Message: > ----------- > Change the row constructor syntax (ROW(...)) so that list elements foo.* > will be expanded to a list of their member fields, rather than creating > a nested rowtype field as formerly. (The old behavior is still available > by omitting '.*'.) This syntax is not allowed by the SQL spec AFAICS, > so changing its behavior doesn't violate the spec. The new behavior is > substantially more useful since it allows, for example, triggers to check > for data changes with 'if row(new.*) is distinct from row(old.*)'. Per > my recent proposal. > > Modified Files: > -------------- > pgsql/doc/src/sgml: > syntax.sgml (r1.106 -> r1.107) > (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/syntax.sgml.diff?r1=1.106&r2=1.107) > pgsql/src/backend/parser: > parse_expr.c (r1.192 -> r1.193) > (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_expr.c.diff?r1=1.192&r2=1.193) > parse_target.c (r1.143 -> r1.144) > (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_target.c.diff?r1=1.143&r2=1.144) > pgsql/src/include/parser: > parse_target.h (r1.39 -> r1.40) > (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/parser/parse_target.h.diff?r1=1.39&r2=1.40) > pgsql/src/test/regress/expected: > triggers.out (r1.22 -> r1.23) > (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/triggers.out.diff?r1=1.22&r2=1.23) > pgsql/src/test/regress/sql: > triggers.sql (r1.12 -> r1.13) > (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/triggers.sql.diff?r1=1.12&r2=1.13) > > ---------------------------(end of broadcast)--------------------------- > TIP 9: In versions below 8.0, the planner will ignore your desire to > choose an index scan if your joining column's datatypes do not > match > -- Bruce Momjian bruce@momjian.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. +
Bruce Momjian <bruce@momjian.us> writes: > Does this complete this TODO item? > o Allow UPDATE tab SET ROW (col, ...) = (...) for updating multiple > columns No, that's unrelated. regards, tom lane