PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Dlaczego jeden identyfikator w CREATE TABLE jest ujęty w cudzysłów, a pozostałe nie?

Zgodnie z instrukcją , position jest

To zastrzeżone słowo w standardowym SQL. To, co widzisz, jest prawdopodobnie wynikiem pgAdmin lub jakiś inny klient, który dwukrotnie cytuje wszystkie zastrzeżone słowa w standardzie SQL, gdy są używane jako identyfikatory.

To stwierdzenie jest poprawne składniowo:

SELECT position FROM author LIMIT 1;

możesz zawsze identyfikatory w cudzysłowie (w ten sposób zachowując pisownię mieszaną). To też działa:

SELECT "position" FROM author LIMIT 1;

Ale tutaj wymagane są podwójne cudzysłowy:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pobieranie elementów json o określonej nazwie klucza ze złożonej struktury zagnieżdżonej w postgres

  2. Dlaczego sekwencje nie są aktualizowane, gdy COPY jest wykonywane w PostgreSQL?

  3. Całkowite ignorowanie stref czasowych w Rails i PostgreSQL

  4. Optymalizacja zapytań w PostgreSQL. WYJAŚNIJ podstawy – część 2

  5. Barman 2.11:barman-cloud-restore i barman-cloud-wal-restore