Обсуждение: Very strange selectproblem

Поиск
Список
Период
Сортировка

Very strange selectproblem

От
Victor Spång Arthursson
Дата:
Can't select 3 columns from a table called varer.

The columns are the three first and are called vnummer, puNr and dNr.

The error message is:

indiadan=# select varer.vNummer from varer;
ERROR:  No such attribute varer.vnummer
indiadan=#

I'm probably doing something else wrong, but can't figure what…

Help needed,

regards,

Victor

Re: Very strange selectproblem

От
Csaba Nagy
Дата:
See my comments below.

On Tue, 2003-11-04 at 13:10, Victor Spång Arthursson wrote:
> Can't select 3 columns from a table called varer.
>
> The columns are the three first and are called vnummer, puNr and dNr.
>
> The error message is:
>
> indiadan=# select varer.vNummer from varer;
                        ^^^^^^^^^^
                        this is upper case N
> ERROR:  No such attribute varer.vnummer
                                  ^^^^^^^
                        this is lower case n in vnummer

The problem could be that you created the table with the name of the vNummer column enclosed in double quotes, like
this:"vNummer". 
In this case postgres remembers the case of the field name. Names are case sensitive in postgres.
In your query, you don't enclose the field names in double quotes, like: varer.vNummer, which is folded to all lower
caseby postgres, and won't match the mixed case field you have created. 
Try to quote the field names in the query, it will likely work.
A good practice to avoid such errors is to always use lower case names with postgres.

HTH,
Csaba.


Re: Very strange selectproblem

От
Francois Suter
Дата:
> indiadan=# select varer.vNummer from varer;
> ERROR:  No such attribute varer.vnummer
> indiadan=#

PostgreSQL casts all names to lowercase. To select your field, you need
to use double quotes, as in:

select varer."vNummer" from varer;

Cheers.

---------------
Francois

Home page: http://www.monpetitcoin.com/

"Would Descartes have programmed in Pascal?" - Umberto Eco