sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvorfor er én identifikator i en CREATE TABLE anført i dobbelte anførselstegn, men ikke de andre?

Ifølge manualen , position er

Det er et reserveret ord i standard SQL. Det du ser, er sandsynligvis output fra pgAdmin eller en anden klient, der dobbeltciterer alle reserverede ord i SQL-standarden, når de bruges som identifikatorer.

Denne erklæring er syntaktisk korrekt:

SELECT position FROM author LIMIT 1;

Du kan altid identifikatorer med dobbelte anførselstegn (derved bevares stavning med blandede store og små bogstaver). Dette virker også:

SELECT "position" FROM author LIMIT 1;

Men der kræves dobbelte anførselstegn her:

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



  1. Oracle Vælg Where Date Between Today

  2. hvordan man importerer datafiler fra s3 til postgresql rds

  3. Få forespørgsel tilbage fra PDO udarbejdet erklæring

  4. Forbedrer begrænsning af en forespørgsel til én post ydeevnen