Campi e tabelle con lettere maiuscole non riconosciuti da PostgreSQL
PostgreSQL potrebbe non riconoscere le lettere maiuscole nei nomi dei campi o delle tabelle del database.
Per esempio, la query
Per risolvere questo problema bisogna inserire i nomi delle tabelle e dei campi tra le virgolette.
Ecco alcuni esempi di query corrette:
Per esempio, la query
SELECT * FROM TABELLA
restituisce l'errore relation "tabella" does not exists anche se la tabella esiste oppure la query SELECT ID FROM TABELLA
restituisce l'errore column "id" does not exist anche se il campo esiste.Per risolvere questo problema bisogna inserire i nomi delle tabelle e dei campi tra le virgolette.
Ecco alcuni esempi di query corrette:
SELECT * FROM "TABELLA"; SELECT "ID" FROM "TABELLA"; SELECT "TABELLA"."ID" FROM "TABELLA"; SELECT * FROM "TABELLA" WHERE "ID" = 1;
La forma migliore per scrivere i nomi delle tabelle e dei campi rimane comunque quella di scriverli in minuscolo. In questo modo, oltre ad evitare problemi come quello risolto da questa guida, si avranno delle query piĆ¹ leggibili con i comandi SQL scritti in maiuscolo e i nomi delle tabelle e dei campi in minuscolo.
Guida scritta da Mattia il 13/12/2011.