Heim > Datenbank > MySQL-Tutorial > Hauptteil

Was ist die maximale Länge einer MySQL-VARCHAR-Spalte?

王林
Freigeben: 2023-08-24 11:49:07
nach vorne
1170 Leute haben es durchsucht

MySQL VARCHAR 列的最大长度是多少?

Tatsächlich speichert der Datentyp VARCHAR Zeichendaten variabler Länge in Einzel- und Mehrbyte-Zeichen. Die Syntax für diesen Datentyp ist VARCHAR(n), wobei n die maximale Anzahl von Zeichen ist, die beim Erstellen der Tabelle angegeben werden müssen. Vor MySQL 5.03 konnte der Wert von n im Bereich von 0 bis 255 liegen, in MySQL 5.03 und höher konnte der Wert jedoch im Bereich von 0 bis 65.535 liegen.

Die maximale Anzahl der in einem VARCHAR gespeicherten Zeichen hängt von der maximalen Zeilengröße und dem verwendeten Zeichensatz ab. Wenn wir den ASCII-Zeichensatz verwenden, können 65.535 Zeichen gespeichert werden, da ASCII 1 Byte pro Zeichen verwendet. Wenn wir andererseits den Zeichensatz utf8 verwenden, beträgt die Zeichenbeschränkung 21.844, da utf8 3 Bytes pro Zeichen verwendet. Die maximale Zeilengröße beträgt 65.535 Byte, was bedeutet, dass die Zeilengröße einschließlich aller Spalten 65.535 Byte nicht überschreiten darf.

Beispiel

mysql> Create Table var_test(FName Varchar(32765) NOT NULL, LName Varchar(32766)
       NOT NULL);
       Query OK, 0 rows affected (0.25 sec)
Nach dem Login kopieren

Die obige Abfrage erstellt eine Tabelle mit zwei Spalten: FName Varchar(32765) und LName Varchar(32766). Die Gesamtlänge beträgt also 32765+2+32766+2=65535 (wobei 2 Bytes pro Spalte zum Speichern der Länge verwendet werden).

mysql> Create Table var_test1(FName varchar(32766) NOT NULL, LName Varchar(32766)
       NOT NULL);
       ERROR 1118 (42000): Row size too large. The maximum row size for the used
       table
       type, not counting BLOBs, is 65535. You have to change some columns to TEXT
       or BLOBs
Nach dem Login kopieren

Jetzt gibt MySQL einen Fehler zurück, wenn die Länge um 1 Byte erhöht wird, wie in der obigen Abfrage gezeigt.

Das obige ist der detaillierte Inhalt vonWas ist die maximale Länge einer MySQL-VARCHAR-Spalte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!