Untersuchung des Äquivalents von varchar(max) in MySQL
MySQL bietet kein explizites Äquivalent zu varchar(max) Datentyp, der in anderen Datenbanksystemen verwendet wird. Es gibt jedoch Möglichkeiten, eine ähnliche Funktionalität innerhalb der Einschränkungen von MySQL zu erreichen.
VARCHAR-Größenbeschränkungen
Standardmäßig ist die maximale Länge eines VARCHAR-Feld in MySQL ist 255 Zeichen lang. Um diese Grenze zu erweitern, können wir die Syntax VARCHAR(length) verwenden. Diese Länge unterliegt jedoch immer noch der maximalen Zeilengröße in MySQL, die 64 KB beträgt (ohne BLOBs).
Zum Beispiel:
VARCHAR(65535)
Dadurch wird ein VARCHARFeld mit einer maximalen Länge von 65535 Zeichen.
Zeichensatz Überlegungen
Multibyte-Zeichensätze wie UTF8 reduzieren die effektive Länge vonVARCHAR-Feldern. In UTF8 kann jedes Zeichen mehrere Bytes Speicherplatz belegen. Dies bedeutet, dass die tatsächliche maximale Länge eines VARCHAR-Felds mit UTF8 kleiner ist:
VARCHAR(21844) CHARACTER SET utf8
Beispiele für VARCHAR-Längenbeschränkungen
Die Bei der Berechnung der maximalen Zeilengröße muss der Speicheraufwand für dieVARCHAR-Längenkodierung berücksichtigt werden, damit die maximale Länge ermittelt werden kann ist etwas kleiner als die maximale Zeilengröße.
CREATE TABLE foo ( v VARCHAR(65534) ); ERROR 1118 (42000): Row size too large...
CREATE TABLE foo ( v VARCHAR(65532) ); Query OK, 0 rows affected...
CREATE TABLE foo ( v VARCHAR(65532) ) CHARSET=utf8; ERROR 1074 (42000): Column length too big for...
varchar(max), der Datentyp VARCHAR(length) bietet eine Möglichkeit, große Textwerte innerhalb der Einschränkungen der maximalen Zeilengröße und des verwendeten Zeichensatzes aufzunehmen.
Das obige ist der detaillierte Inhalt vonWas ist das MySQL-Äquivalent von varchar(max)?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!