Der MySQL Server unterstützt drei Kommentarstile:
Vom Zeichen ‘#
’ bis zum
Zeilenende.
Von der Sequenz ‘--
’ bis zum
Zeilenende. Bei MySQL erfordert der Kommentarstil
‘--
’ (doppelter Bindestrich)
mindestens ein nachfolgendes Whitespace- oder Steuerzeichen
(z. B. ein Leerzeichen, einen Tabulator, einen Zeilenwechsel
usw.). Diese Syntax unterscheidet sich leicht von der
SQL-Standardkommentarsyntax, wie sie in
Abschnitt 1.9.5.7, „'--
' als Beginn eines Kommentars“, beschrieben ist.
Von der Sequenz /*
bis zur folgenden
Sequenz */
, wie man es von der
Programmiersprache C her kennt. Diese Syntax ermöglicht
Kommentare, die sich über mehrere Zeilen erstrecken, da
öffnende und schließende Sequenz nicht in derselben Zeile
stehen müssen.
Das folgende Beispiel veranschaulicht alle drei Kommentarstile:
mysql>SELECT 1+1; # This comment continues to the end of line
mysql>SELECT 1+1; -- This comment continues to the end of line
mysql>SELECT 1 /* this is an in-line comment */ + 1;
mysql>SELECT 1+
/*
this is a
multiple-line comment
*/
1;
MySQL Server unterstützt mehrere Kommentarvarianten im C-Stil. Hiermit können Sie Code schreiben, der MySQL-Erweiterungen enthält, aber trotzdem portierbar ist; Sie müssen dann Kommentare in der folgenden Form verwenden:
/*! MySQL-specific code
*/
In diesem Fall verarbeitet MySQL Server den Code innerhalb des
Kommentars wie normale SQL-Anweisungen; andere SQL-Server hingegen
ignorieren die Erweiterungen. So erkennt MySQL Server
beispielsweise anders als andere Server das Schlüsselwort
STRAIGHT_JOIN
in der folgenden Anweisung:
SELECT /*! STRAIGHT_JOIN */ col1 FROM table1,table2 WHERE ...
Wenn Sie nach dem Zeichen ‘!
’ die
Versionsnummer angeben, wird die Syntax nur ausgeführt, wenn die
betreffende oder eine neuere MySQL-Version verwendet wird. Das
Schlüsselwort TEMPORARY
im folgenden Kommentar
wird nur von Servern ausgeführt, auf denen MySQL 3.23.02 oder
höher läuft:
CREATE /*!32302 TEMPORARY */ TABLE t (a INT);
Die beschriebene Kommentarsyntax wirkt sich darauf aus, wie der Server mysqld SQL-Anweisungen verarbeitet. Auch das Clientprogramm mysql verarbeitet die Anweisungen teilweise, bevor es sie an den Server sendet. (Dies tut es, um die Anweisungsgrenzen in einer Eingabezeile mit mehreren Anweisungen zu ermitteln.)
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.