On Wednesday, February 09, 2011 1:51:38 am Kaloyan Iliev Iliev wrote: > Hi, > I think I found something strange in PostgreSQL behavior. Here is an > example: > > > testdb=# CREATE TABLE test1 (test2 text, test3 text); > CREATE TABLE > testdb=# SELECT A.name FROM test1 A; > name > ------ > (0 rows) > > testdb=# INSERT INTO test1 (test2,test3) VALUES ('1','2'); > INSERT 0 1 > testdb=# INSERT INTO test1 (test2,test3) VALUES ('3','4'); > INSERT 0 1 > testdb=# SELECT A.name FROM test1 A; > name > ------- > (1,2) > (3,4) > (2 rows) > > customer.20080408=# SELECT name FROM test1; > ERROR: column "name" does not exist > LINE 1: SELECT name FROM test1; > > > testdb=# SELECT version(); > > version > --------------------------------------------------------------------------- > ------------------------------- PostgreSQL 8.4.5 on > amd64-portbld-freebsd8.1, compiled by GCC cc (GCC) 4.2.1 20070719 > [FreeBSD], 64-bit > (1 row) > > Obviously there is no column with name "name", but the SELECT query > (ONLY WHEN I USE ALIASES) returns result for it. > And if I have a column with name "name_en" and by mistake write it > "name", instead of error I receive strange data (ARRAY from all > columns), that I don't expect. > > Could you tell me if this is a bug or some feature I haven't heard of. Depending on your point of view both. For a good explanation see: http://www.depesz.com/index.php/2010/11/08/waiting-for-9-1-removed-autocast- footgun/ As detailed above this feature will go away in 9.1. > > Best regards, > Kaloyan Iliev -- Adrian Klaver adrian.klaver@xxxxxxxxx -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general