MySQL 5.7版本中,表的最大字段大小受到了限制。這是由于MySQL 5.7版本中提供了新的行格式,即 COMPACT 和 REDUNDANT 行格式,它們對最大字段大小做出了限制。
CREATE TABLE mytable (
mycolumn TEXT(65535)
);
在 MySQL 5.7 版本中,上面的語句將會報錯,因為它嘗試創建一個大小為 65535 字節的 TEXT 列,而這已經超過了最大字段大小。
在 MySQL 5.7 版本中,最大字段大小為 65532 字節。這個大小包括了列頭的大小和實際數據的大小。
CREATE TABLE mytable (
mycolumn VARCHAR(65532)
);
上面的語句可以在 MySQL 5.7 版本中正常執行,因為它創建了一個 VARCHAR 列,它的大小為最大字段大小的上限。
需要注意的是,最大字段大小僅適用于 COMPACT 和 REDUNDANT 行格式。如果使用了其他行格式,那么最大字段大小可能會有所不同。
ALTER TABLE mytable ROW_FORMAT=FIXED;
上面的語句將表的行格式設置為 FIXED。在這個行格式下,最大字段大小為表的頁大小減去行存儲的開銷。因此,最大字段大小可能會有所不同。
下一篇html5星空特效代碼