Blue Flower

MySQL Feld Typen

MySQL unterstützt einige Feld-Typen, welche in drei Kategorien unterteilt werden können: Zahlen (numeric), Datum und / oder Zeit und Zeitstempel (date, time) und Buchstaben string (character). Hier jetzt ein Überblick über die Tpyen und deren Größe.

Typ Verwendung Größe
TINYINT Sehr kleines integer Der Bereich mit Vorzeichen ist 128 bis 127. Der Bereich ohne Vorzeichen ist 0 bis 255.
SMALLINT Kleine integer Der Bereich mit Vorzeichen ist 32.768 bis 32.767. Der Bereich ohne Vorzeichen ist 0 bis 65.535
MEDIUMINT Mittelgroße integer Der Bereich mit Vorzeichen ist 8.388.608 bis 8.388.607. Der Bereich ohne Vorzeichen ist 0 bis 16777215
INT or INTEGER Normalgroße integer Der Bereich mit Vorzeichen ist 2147483648 to 2147483647. Der Bereich ohne Vorzeichen ist 0 bis 4.294.967.295
BIGINT Sehr größe integer Der Bereich mit Vorzeichen ist 9.223.372.036.854.775.808 bis 9.223.372.036.854.775.807.
Der Bereich ohne Vorzeichen ist 0 bis 18.446.744.073.709.551.615
FLOAT Eine kleine Fließkomma Zahl.
Immer mit Vorzeichen.

Bereiche sind 3.402823466E+38 bis 1.175494351E-38, 0 und 1.175494351E-38 bis 3.402823466E+38.
Ist die Anzahl der Stellen nicht angegeben oder
<= 24 wird SINGLE PRECISION gesetzt..

DOUBLE,
DOUBLE PRECISION,
REAL
Eine normale Fließkomma Zahl. Immer mit Vorzeichen. Bereiche sind -1.7976931348623157E+308 bis -2.2250738585072014E-308, 0 und 2.2250738585072014E-308 bis 1.7976931348623157E+308.
Ist die Anzahl der Stellen nicht angegeben oder
25 <= Stellen <= 53 wird DOUBLE PRECISION angenommen.
DECIMAL,
NUMERIC
Eine Fließkommazahl als Zeichenfolge. Immer mit Vorzeichen.

Verhält sich wie ein Text-Feld (CHAR). Unverpackt bedeutet das die Zahl als Zeichenkette gespeichert wird. Für jede Zahlenstelle wird als Ziffer abgelegt. Die Kommastelle und das Vorzeichen werden nicht in die Längenzählung einbezogen.
Wenn die Nachkommastellen 0 sind wird weder das trennende Komma noch ingendwelche
Nachkommastellen mitgespeichert.
Der maxmale Bereich ist der selbe wie
der Datentyp DOUBLE. Die Größe kann duch die Angabe der Länge und Nachkommastellen beschränkt werden. Werden die Nachkommastellen weg gelassen wird diese auf 0 gesetzt. Wird die Längenangabe weggelassen wird diese auf 10 fest gelegt
In MySQL 3.22 enthält die Längenangabe das Vorzeichen und den Nachkomma-Trenner.

DATE Ein Datum Der unterstütze Bereich ist 1000-01-01 bis 9999-12-31. MySQL zeigt DATE Werte in folgendem Format YYYY-MM-DD
DATETIME Datum und Zeit kombiniert Der unterstütze Bereich ist 1000-01-01 00:00:00 bis 9999-12-31 23:59:59. MySQL zeigt DATETIME Werte in folgendem Format YYYY-MM-DD HH:MM:SSan.
TIMESTAMP Ein Zeitstempel

Der unterstütze Bereich ist 1970-01-01 00:00:00 bis etwa zum Jahr 2037. MySQL zeigt Zeitstempel TIMESTAMP in folgenden Formaten an: YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD oder YYMMDD.
Es hängt davon ab ob M 14 (oder nicht angegeben), 12, 8 or 6 angeben ist.
Der Zeitstempel wird immer bei einem einfügen (
INSERT ) und aktualiseren (UPDATE) des Datensatzes generiert / aktualisert. Kann aber auch direkt in das Fel per SQL geschrieben werden.

TIME Eine Zeitangabe Der unterstütze Bereich ist -838:59:59 bis 838:59:59. MySQL zeigt TIME Felder in folgenden Format: HH:MM:SS. Die Werte für das Zeitfeld können aus Zeichenketten und Zahlen gesetzt werden.
YEAR Ein Jahr in 2- or 4- Stellen Fomat (default sind 4-Stellen)

Die erlaubten Werte sind 1901 bis 2155, und 0000 im 4-stelligen Format und 1970-2069 wenn das 2-stellige Format (70-69) verwendet wird. MySQL zeigt Jahreswerte (YEAR) values im Format YYYY an.
Die Werte für das Jahr-Feld können aus Zeichenketten und Zahlen gesetzt werden.
(Der YEAR Ttyp ist neu seit MySQL 3.22.)

CHAR(x)

Eine feste Länge von Zeichen welche immer Rechts mit Leerzeichen aufgefüllt werden beim speichern.

Die Größe geht von 1 bis 255 Zeichen. Länge Zeichenketten wie angegeben speichern abgeschnitten.
Beim Vergleichen werden Groß- und Kleinschreibung entsprechend den vorgegebenen Zeichensatz (character set) nicht berücksichtigt aus wenn das Schlüsselwort BINARY gesetzt ist

VARCHAR(x)

Die Länge ist variabel.
Angehänge Leerzeichen werden immer beim speichern abgeschnitten. (Im Gegensatz zur ANSI SQL Spezifikation)

Die Größe geht von 1 bis 255 Zeichen. Beim Vergleichen werden Groß- und Kleinschreibung entsprechend den vorgegebenen Zeichensatz (character set) nicht berücksichtigt aus wenn das Schlüsselwort BINARY gesetzt ist
TINYBLOB,
TINYTEXT
  Ein BLOB or TEXT Feld mit einer maximalen Länge von 255 (2^8 - 1) Zeichen
BLOB,
TEXT
  Ein BLOB or TEXT Feld mit einer maximalen Länge von 65.535 (2^16 - 1) Zeichen
MEDIUMBLOB,
MEDIUMTEXT
  Ein BLOB or TEXT Feld mit einer maximalen Länge von 16.777.215 (2^24 - 1) Zeichen
LONGBLOB,
LONGTEXT
  Ein BLOB or TEXT Feld mit einer maximalen Länge von 4.294.967.295 (2^32 - 1) Zeichen
ENUM Eine Aufzählung Ein Zeichenketten-Objekt. Es kann nur ein Wert aus einer vorgegebenen Liste ausgewählt werden wert1, wert2, ..., oder NULL. Ein ENUM kann nur maximale 65.535 Listeneinträge aufnehmen.
SET Eine Gruppe Ein Zeichenketten-Objekt das keine oder meherere Werte annehmen kann. Diese müssen aus einer vorgegebenen Liste ausgewählt werden. value1, value2, ... Einee Gruppe kann maximal 64 Mitglieder haben.