Heim >Datenbank >MySQL-Tutorial >Wie gehen verschiedene SQL-Datenbanken mit Bezeichnertrennzeichen um?

Wie gehen verschiedene SQL-Datenbanken mit Bezeichnertrennzeichen um?

Linda Hamilton
Linda HamiltonOriginal
2024-12-29 07:29:09205Durchsuche

How Do Different SQL Databases Handle Identifier Delimiters?

Datenbank-Bezeichner-Trennzeichen: Eintauchen in Quotierungsvariationen

Im Bereich SQL entsteht eine häufige Anforderung bei der Arbeit mit Bezeichnern (Tabellennamen, Spaltennamen), die möglicherweise nicht alphanumerische Zeichen enthalten oder potenzielle Konflikte mit SQL-Schlüsselwörtern darstellen. Um dies zu beheben, verwenden Datenbanken Trennzeichen, die als „getrennte Bezeichner“ bekannt sind.

Anführungszeichen mit Backticks und doppelten Anführungszeichen

Konventionell verwendet SQL standardmäßig doppelte Anführungszeichen Trennzeichen für zitierte Bezeichner:

SELECT * FROM "my_table";

Einige Datenbanken weichen jedoch von dieser Norm ab. Beispielsweise haben MySQL und Microsoft SQL Server Variationen eingeführt:

  • MySQL: MySQL verwendet standardmäßig Backquotes (`), unterstützt aber auch doppelte Anführungszeichen:
SELECT * FROM `my_table`;

-- Enabling ANSI mode allows for double-quotes:
SET SQL_MODE=ANSI_QUOTES;
SELECT * FROM "my_table";
  • Microsoft SQL Server: Microsoft SQL Server verwendet Klammern ([]) als Standardtrennzeichen, während doppelte Anführungszeichen mit der folgenden Einstellung unterstützt werden:
SELECT * FROM [my_table];

-- Turn on quoted identifiers:
SET QUOTED_IDENTIFIER ON;
SELECT * FROM "my_table";

Im Fall von InterBase und Firebird ist eine Änderung des SQL-Dialekts erforderlich um durch Trennzeichen getrennte Bezeichner zuzulassen.

Konformität mit Standards

Während viele Datenbanksysteme sich an die halten Aufgrund der Konvention für doppelte Anführungszeichen und der unterschiedlichen Anführungsmethoden wird deutlich, wie wichtig es ist, die Dokumentation zu überprüfen und die spezifischen Konventionen jedes DBMS einzuhalten. Dadurch können Sie Syntaxfehler vermeiden und sicherstellen, dass Ihre SQL-Abfragen wie vorgesehen ausgeführt werden.

Das obige ist der detaillierte Inhalt vonWie gehen verschiedene SQL-Datenbanken mit Bezeichnertrennzeichen um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn