sql >> Databasteknik >  >> RDS >> PostgreSQL

Varför är en identifierare i en CREATE TABLE dubbelciterad, men inte de andra?

Enligt manualen , position är

Det är ett reserverat ord i standard SQL. Det du ser är förmodligen utdata från pgAdmin eller någon annan klient som dubbelciterar alla reserverade ord i SQL-standarden när de används som identifierare.

Detta påstående är syntaktisk korrekt:

SELECT position FROM author LIMIT 1;

Du kan alltid identifierare med dubbla citattecken (och därigenom bevara blandad stavning). Detta fungerar också:

SELECT "position" FROM author LIMIT 1;

Men dubbla citattecken krävs här:

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



  1. Hur skapar man ett ja/nej booleskt fält i SQL-servern?

  2. SQL Data Discovery and Classification

  3. Hur CONVERT() fungerar i MariaDB

  4. Inloggningsskriptet fungerar inte som det krävs