Jede „Zeichenspalte“ (d. h. eine Spalte des Typs
CHAR
, VARCHAR
oder
TEXT
) hat einen Spaltenzeichensatz und eine
Spaltensortierfolge. Die Spaltendefinitionssyntax bietet
optionale Klauseln zur Angabe von Spaltenzeichensatz und
-sortierfolge:
col_name
{CHAR | VARCHAR | TEXT} (col_length
) [CHARACTER SETcharset_name
[COLLATEcollation_name
]]
Beispiel:
CREATE TABLE Table1 ( column1 VARCHAR(5) CHARACTER SET latin1 COLLATE latin1_german1_ci );
MySQL wählt Zeichensatz und Sortierfolge für eine Spalte auf folgende Weise:
Wenn sowohl CHARACTER SET
als auch
X
COLLATE
angegeben werden, dann werden der Zeichensatz
Y
X
und die Sortierfolge
Y
eingestellt.
Wenn CHARACTER SET
ohne
X
COLLATE
angegeben wird, dann wird der
Zeichensatz X
mit seiner
Standardsortierfolge eingestellt.
Wenn COLLATE
ohne Y
CHARACTER SET
angegeben wird, dann
wird der mit Y
verknüpfte
Zeichensatz mit der Sortierfolge
Y
eingestellt.
Andernfalls werden die tabellenspezifischen Standardwerte für Zeichensatz und Sortierfolge eingestellt.
Die Klauseln CHARACTER SET
und
COLLATE
entsprechen dem SQL-Standard.
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.