今天設計表結構,加了幾個字段,結果報錯了
Ligne trop grande. Le taille maximale d'une ligne, sauf les BLOBs, est 65535.........
當時的情況是,表中本來已經有50個字段了, 這次的需求需要添加18個字段,我將18個字段全部設置成vachar 255 。 結果報錯了。不明白什么原因
這個錯誤用百度翻譯出來就是 “行太大了。在規模最大的線。除了blobs,65535。”
到底是怎么一回事呢?難道單條記錄有限制?
后來將這18個字段的長度都設置成了100,創建成功了
網上看到下面這段文字
MySQL的記錄長度
MySQL默認規定一條記錄最大的長度是65535字節,所有的字段加在一起所占的字節數不能超過65535。但是MySQL中字段的長度有的時使用字節來規定int,有些字段類型是使用字符個數來規定的。
1個漢字所占的是多少?根據字符編碼而定,
latin1字符集1個字母占據1個字節。
gbk字符集1個漢字占據2個字節
utf8字符集1個漢字占據3個字節
還需要考慮varchar的記錄長度,需要使用1或2個字節來記錄。
還需要考慮null值的問題。