MySQL varchar eşdeğeri(max)?
MySQL varchar eşdeğeri(max) nedir?
CEVAP
Bir varchar max uzunluğu 64 KB olan MySQL max satır boyutunu, tabi (Lekeler hariç):
VARCHAR(65535)
Ancak, sınır multi-byte karakter kümesi kullanıyorsanız: daha düşük olduğunu unutmayın
VARCHAR(21844) CHARACTER SET utf8
İşte bazı örnekler:
Boyutu 65535, ama bir varchar en fazla satır da bir veya iki bayt belirli bir uzunlukta dize kodlamak için içerir. Aslında eğer tablo tek bir sütun değilse bile en büyük satır boyutunu bir varchar ilan edemez.
mysql> CREATE TABLE foo ( v VARCHAR(65534) );
ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
Ama biz uzunlukları azalan çalışırsanız, çalışan en büyük uzunluğu bulalım:
mysql> CREATE TABLE foo ( v VARCHAR(65532) );
Query OK, 0 rows affected (0.01 sec)
Şimdi ise Tablo düzeyinde boş bir karakter kümesi kullanmak için çalışırsanız, birden çok bayt her karakter sayılır. UTF8 dizeleri yokmutlakadize başına birden çok bayt kullanır, ama MySQL tek baytlık karakterler için gelecekte bütün ekler kısıtlamak atarsın sanırım.
mysql> CREATE TABLE foo ( v VARCHAR(65532) ) CHARSET=utf8;
ERROR 1074 (42000): Column length too big for column 'v' (max = 21845); use BLOB or TEXT instead
Son hata söylediklerine rağmen, Orada hala 21845 uzunluğu sevmez.
mysql> CREATE TABLE foo ( v VARCHAR(21845) ) CHARSET=utf8;
ERROR 1118 (42000): Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
Bu zaten işe yaramazdı olan 21845*3 = 65535, hesaplamak, eğer mükemmel mantıklı. İşler yapan 21844*3 = 65532, oysa.
mysql> CREATE TABLE foo ( v VARCHAR(21844) ) CHARSET=utf8;
Query OK, 0 rows affected (0.32 sec)
MySQL: Büyük VARCHAR vs METİN?...
MySQL VARCHAR max boyutu nedir?...
MySQL için en uygun varchar boyutları ...
MySQL tablodaki varchar uzunluk önemi...
SHA256 karma kullanırken, ne kadar kar...