Обсуждение: ERROR: column 'xxx' does not exist (under v. 7.4.1)
Using psql and running as the owner of the table "app" I
try to access the columns of the table like so:
SELECT * FROM app;
which returns all the columns in the table including
the one I'm interested in, which is "companyID".
If instead I use something like:
SELECT companyID FROM app;
I get the following:
ERROR: column "companyid" does not exist
even though the column DOES exist (the previous query
returned "companyID" as one of the column headers). Any
suggestions as to what I might be missing? I'm running
Postgres 7.4.1.
Regards,
Iker
Iker Arizmendi wrote: > > Using psql and running as the owner of the table "app" I > try to access the columns of the table like so: > > SELECT * FROM app; > > which returns all the columns in the table including > the one I'm interested in, which is "companyID". > If instead I use something like: > > SELECT companyID FROM app; > > I get the following: > > ERROR: column "companyid" does not exist > > even though the column DOES exist (the previous query > returned "companyID" as one of the column headers). Any > suggestions as to what I might be missing? I'm running > Postgres 7.4.1. > > Regards, > Iker You need to quote the table name if it contains upper case or strange characters: SELECT "companyID" FROM app; -- Mark Gibson <gibsonm@cromwell.co.uk> Web Developer & Database Admin Cromwell Tools Ltd. Leicester, England.
> the one I'm interested in, which is "companyID".
^^^^^^^^^^^
> SELECT companyID FROM app;
^^^^^^^^^
> ERROR: column "companyid" does not exist
^^^^^^^^^^^
Look closely at the capitalization and quoting.
--
GPG key ID E4071346 @ wwwkeys.pgp.net
E167 67FD A291 2BEA 73BD 4537 78B9 A9F9 E407 1346
Mark Gibson wrote: > > You need to quote the table name if it contains upper case or strange > characters: > > SELECT "companyID" FROM app; > Obviously I meant column name, but it applies to any object identifier ;) -- Mark Gibson <gibsonm@cromwell.co.uk> Web Developer & Database Admin Cromwell Tools Ltd. Leicester, England.
On Thu, Feb 05, 2004 at 10:00:21AM -0500, Iker Arizmendi wrote: > > Using psql and running as the owner of the table "app" I > try to access the columns of the table like so: > > SELECT * FROM app; > > which returns all the columns in the table including > the one I'm interested in, which is "companyID". > If instead I use something like: > > SELECT companyID FROM app; > > I get the following: > > ERROR: column "companyid" does not exist > SELECT "companyID" FROM app; You've stored a case sensitive column name in the table, but by default Postgres will fold all identifiers to lower case unless quoted. --Joe -- Joe Sunday <sunday@csh.rit.edu> http://www.csh.rit.edu/~sunday/ Computer Science House, Rochester Inst. Of Technology