In jeder MySQL-Version gibt es neue Schlüsselwörter, die für MySQL reserviert sind. Die Schlüsselwörter, z.B. CREATE, SELECT, UPDATE und DROP, sind vor allem SQL-Befehle oder Funktionen.

MySQL-Entwickler verwenden diese Schlüsselwörter in der Regel nicht als Datenbank- Tabellen- oder Spaltennamen. Die vollständige Liste der Schlüsselworter und eine Möglichkeit sie dennoch zu verwenden, finden Sie in diesem Hilfeartikel.

Liste der Schlüsselwörter

Eine vollständige Liste aller reservierten Wörter in MySQL 5.7 finden Sie hier.

Backticks

So verwenden Sie Schlüsselwörter in Tabellen oder Spalten

Allgemein raten die SQL-Entwickler immer, auf die Verwendung reservierter Wörter zu verzichten. Falls Sie dennoch ein reserviertes Wort als Tabellen- oder Spaltenname verwenden möchten (oder müssen), können Sie in SQL-Anweisungen den jeweiligen Bezeichner in spezielle Anführungszeichen setzen, sogenannte Backticks (` `).

Hier ein Beispiel: Sie wollen das reservierte Wort UPDATE in einer SQL-Anweisung verwenden.

  • Hier die „falsche“ Verwendung:
    • SELECT update FROM table

  • Der Interpreter versteht das Wort update, obwohl es hier klein geschrieben wurde, als SQL-Befehl UPDATE. Die Folge ist, dass eine Syntax-Fehlermeldung ausgeben wird.
  • Wenn Sie stattdessen das Wort update in Anführungszeichen schreiben, wird es korrekt ausgeführt.
  • Daher ist eine korrekte Verwendung:
    • SELECT `update` FROM table;

Migration von MySQL 5.x auf MySQL 5.7

Mit jeder MySQL-Version kommen neue reservierte Wörter hinzu. Sollte es daher nach einer Migration zu Skriptfehlern kommen, prüfen Sie, ob ein reserviertes Wort bei Ihnen als Spalten- oder Tabellenname verwendet wird. Wenn dies zutrifft, müssen Sie das reservierte Wort mittels Backticks in Ihren SQL-Anweisungen verwenden.