sql >> Databáze >  >> RDS >> PostgreSQL

Proč je jeden identifikátor v CREATE TABLE uveden do dvojitých uvozovek, ale ne ostatní?

Podle manuálu , position je

Je to vyhrazené slovo ve standardním SQL. To, co vidíte, je pravděpodobně výstup pgAdmin nebo nějaký jiný klient, který používá dvojité uvozovky všech rezervovaných slov ve standardu SQL při použití jako identifikátory.

Toto prohlášení je syntakticky správné:

SELECT position FROM author LIMIT 1;

můžete identifikátory vždy v uvozovkách (a tím se zachová pravopis se smíšenými a malými písmeny). Toto funguje také:

SELECT "position" FROM author LIMIT 1;

Ale dvojité uvozovky jsou zde povinné:

SELECT "where" FROM author LIMIT 1;
SELECT "CaMeL" FROM author LIMIT 1;
SELECT "a-b-c" FROM author LIMIT 1;



  1. RMySQL, chyby načítání – varování ovladače RS-DBI:(chyba při načítání řádků)

  2. Hekaton se zvratem:TVP v paměti – část 3

  3. Importní nástroj Excel CSV

  4. Jak získat neseskupené sloupce v příkazu SQL (podobně jako v MySQL)