sql >> Database teknologi >  >> RDS >> Mysql

Bruger forskellige databaser forskellige navnecitater?

Denne brug af anførselstegn kaldes afgrænsede identifikatorer. Det er en vigtig del af SQL, fordi du ellers ikke kan bruge identifikatorer (f.eks. tabelnavne og kolonnenavne), der:

  • Inkluder mellemrum:"mit bord"
  • Inkluder specialtegn og tegnsætning:"mit-bord"
  • Inkluder internationale tegn:"私のテーブル"
  • Er store og små bogstaver:"MinTabel"
  • Match SQL-nøgleord:"tabel"

Standard-SQL-sproget bruger dobbelte anførselstegn for separerede identifikatorer:

SELECT * FROM "my table";

MySQL bruger som standard tilbage-citater. MySQL kan bruge standard dobbelte anførselstegn:

SELECT * FROM `my table`;
SET SQL_MODE=ANSI_QUOTES;
SELECT * FROM "my table";

Microsoft SQL Server og Sybase bruger som standard parenteser. De kan begge bruge standard dobbelte anførselstegn på denne måde:

SELECT * FROM [my table];
SET QUOTED_IDENTIFIER ON;
SELECT * FROM "my table";

InterBase og Firebird skal indstille SQL-dialekten til 3 for at understøtte afgrænsede identifikatorer.

De fleste andre mærker af databaser bruger dobbelte anførselstegn korrekt.



  1. Oracle hvordan man eksporterer forespørgsel til en tekst/csv-fil

  2. Hvordan indsætter man arabiske tegn i SQL-databasen?

  3. Sådan arbejder du med datofunktioner i Oracle sql

  4. Hvordan man kombinerer resultater af to forespørgsler i et enkelt datasæt