Erklärte SQL-Datentypen und Beispiele für MySQL-Syntax

SQL-Datentypen

Jede Spalte in einer Datenbanktabelle muss einen Namen und einen Datentyp haben.

Ein SQL-Entwickler muss entscheiden, welcher Datentyp beim Erstellen einer Tabelle in jeder Spalte gespeichert wird. Der Datentyp ist eine Richtlinie für SQL, um zu verstehen, welcher Datentyp in jeder Spalte erwartet wird, und er gibt auch an, wie SQL mit den gespeicherten Daten interagiert.

MySQL-Datentypen

Allgemeine SQL-Datentypen bestehen aus folgenden Elementen:

  1. Ein text- und / oder numerischer Wert, der häufig als STRING bezeichnet wird
  2. Ein nur numerischer Wert, der häufig als INTEGER bezeichnet wird
  3. Ein kalender- und / oder uhrbasierter Wert, der häufig als DATUM oder ZEIT bezeichnet wird
  4. Ein datenbankspezifischer Wert, z. B. ein boolesches Flag (mit zwei Optionen), ein Array, das mehrere Werte innerhalb eines Datenpunkts speichert

Textdatentypen:

DatentypBeschreibung
CHAR (Größe)Enthält eine Zeichenfolge fester Länge (kann Buchstaben, Zahlen und Sonderzeichen enthalten). Die feste Größe ist in Klammern angegeben. Kann bis zu 255 Zeichen speichern
VARCHAR (Größe)Enthält eine Zeichenfolge variabler Länge (kann Buchstaben, Zahlen und Sonderzeichen enthalten). Die maximale Größe ist in Klammern angegeben. Kann bis zu 255 Zeichen speichern. Hinweis: Wenn Sie einen größeren Wert als 255 eingeben, wird dieser in einen TEXT-Typ konvertiert
TINYTEXTEnthält eine Zeichenfolge mit einer maximalen Länge von 255 Zeichen
TEXTEnthält eine Zeichenfolge mit einer maximalen Länge von 65.535 Zeichen
KLECKSFür BLOBs (Binary Large OBjects). Hält bis zu 65.535 Datenbytes
MEDIUMTEXTEnthält eine Zeichenfolge mit einer maximalen Länge von 16.777.215 Zeichen
MEDIUMBLOBFür BLOBs (Binary Large OBjects). Hält bis zu 16.777.215 Datenbytes
LONGTEXTEnthält eine Zeichenfolge mit einer maximalen Länge von 4.294.967.295 Zeichen
LONGBLOBFür BLOBs (Binary Large OBjects). Hält bis zu 4.294.967.295 Datenbytes
ENUM (x, y, z usw.)Sie können eine Liste möglicher Werte eingeben. Sie können bis zu 65535 Werte in einer ENUM-Liste auflisten. Wenn ein Wert eingefügt wird, der nicht in der Liste enthalten ist, wird ein leerer Wert eingefügt. Hinweis: Die Werte werden in der Reihenfolge sortiert, in der Sie sie eingeben. Sie geben die möglichen Werte in diesem Format ein: ENUM ('X', 'Y', 'Z')
EINSTELLENÄhnlich wie ENUM, außer dass SET bis zu 64 Listenelemente enthalten und mehr als eine Auswahl speichern kann

Anzahl Datentypen:

DatentypBeschreibung
TINYINT (Größe)-128 bis 127 normal. 0 bis 255 UNSIGNED *. Die maximale Anzahl von Ziffern kann in Klammern angegeben werden
SMALLINT (Größe)-32768 bis 32767 normal. 0 bis 65535 UNSIGNED *. Die maximale Anzahl von Ziffern kann in Klammern angegeben werden
MEDIUMINT (Größe)-8388608 bis 8388607 normal. 0 bis 16777215 UNSIGNED *. Die maximale Anzahl von Ziffern kann in Klammern angegeben werden
INT (Größe)-2147483648 bis 2147483647 normal. 0 bis 4294967295 UNSIGNED *. Die maximale Anzahl von Ziffern kann in Klammern angegeben werden
BIGINT (Größe)-9223372036854775808 bis 9223372036854775807 normal. 0 bis 18446744073709551615 UNSIGNED *. Die maximale Anzahl von Ziffern kann in Klammern angegeben werden
FLOAT (Größe, d)Eine kleine Zahl mit einem Gleitkomma. Die maximale Anzahl von Ziffern kann im Größenparameter angegeben werden. Die maximale Anzahl von Stellen rechts vom Dezimalpunkt wird im Parameter d angegeben
DOPPELT (Größe, d)Eine große Zahl mit einem Gleitkomma. Die maximale Anzahl von Ziffern kann im Größenparameter angegeben werden. Die maximale Anzahl von Stellen rechts vom Dezimalpunkt wird im Parameter d angegeben
DEZIMAL (Größe, d)Ein DOUBLE, das als Zeichenfolge gespeichert wird und einen festen Dezimalpunkt zulässt. Die maximale Anzahl von Ziffern kann im Größenparameter angegeben werden. Die maximale Anzahl von Stellen rechts vom Dezimalpunkt wird im Parameter d angegeben

Datumsdatentypen:

DatentypBeschreibung
DATUM()Ein Treffen. Format: JJJJ-MM-TT Hinweis: Der unterstützte Bereich reicht von '1000-01-01' bis '9999-12-31'.
TERMINZEIT()Eine Kombination aus Datum und Uhrzeit. Format: JJJJ-MM-TT HH: MI: SS Hinweis: Der unterstützte Bereich reicht von '1000-01-01 00:00:00' bis '9999-12-31 23:59:59'.
TIMESTAMP ()Ein Zeitstempel. TIMESTAMP-Werte werden als Anzahl der Sekunden seit der Unix-Epoche ('1970-01-01 00:00:00' UTC) gespeichert. Format: JJJJ-MM-TT HH: MI: SS Hinweis: Der unterstützte Bereich reicht von '1970-01-01 00:00:01' UTC bis '2038-01-09 03:14:07' UTC
ZEIT()Eine Zeit. Format: HH: MI: SS Hinweis: Der unterstützte Bereich reicht von '-838: 59: 59' bis '838: 59: 59'.
JAHR()Ein Jahr im zweistelligen oder vierstelligen Format. Hinweis: Zulässige Werte im vierstelligen Format: 1901 bis 2155. Zulässige Werte im zweistelligen Format: 70 bis 69, die Jahre von 1970 bis 2069 darstellen

Schließlich gibt es noch einige andere Datentypen, die Sie verwenden werden:

Andere Datentypen

DatentypBeschreibung
BOOLEANSpeicher TRUEoder FALSEWerte
ARRAYEine festgelegte und geordnete Sammlung von Elementen
MULTISETEine ungeordnete Sammlung von Elementen mit variabler Länge
XMLSpeichert XML-Daten