PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Защо един идентификатор в CREATE TABLE е в двойни кавички, но не и другите?

Съгласно ръководството , position е

Това е запазена дума в стандартния SQL. Това, което виждате, вероятно е резултатът от pgAdmin или някой друг клиент, който поставя в двойни кавички всички запазени думи в SQL стандарта, когато се използва като идентификатори.

Това твърдение е синтактично правилно:

SELECT position FROM author LIMIT 1;

Вие можете винаги поставяйте идентификаторите в двойни кавички (като по този начин запазвате правописа със смесен регистър). Това също работи:

SELECT "position" FROM author LIMIT 1;

Но тук се изискват двойни кавички:

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. PostgreSQL връща набор от резултати като JSON масив?

  2. PostgreSQL тригер за динамично генериране на кодове за множество таблици

  3. Какво е Postgres сесия?

  4. docker postgres с първоначални данни не се запазва при комитации

  5. добавяне на липсваща дата в таблица в PostgreSQL