Thread: pgsql: Add hint about not qualifying UPDATE...SET target with relation

Add hint about not qualifying UPDATE...SET target with relation name.

Target columns in UPDATE ... SET must not be qualified with the target
table; we disallow this because it'd create ambiguity about which name
is the column name in case of field-qualified names.  However, newbies
have been seen to expect that they could qualify a target name just
like other names.  The error message when they do is confusing:
"column "foo" of relation "foo" does not exist".  To improve matters,
issue a HINT if the invalid name is qualified and matches the
relation's alias.

James Coleman (editorialized a bit by me)

Discussion: https://postgr.es/m/CAAaqYe8S2Qa060UV-YF5GoSd5PkEhLV94x-fEi3=TOtpaXCV+w@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/58447e31890ace0d552a4bf693744bef3a5335e6

Modified Files
--------------
src/backend/parser/analyze.c                  | 3 +++
src/test/regress/expected/insert_conflict.out | 6 ++++++
src/test/regress/expected/update.out          | 6 ++++++
src/test/regress/sql/insert_conflict.sql      | 3 +++
src/test/regress/sql/update.sql               | 3 +++
5 files changed, 21 insertions(+)