ysql一行最多有多少字節(jié)?
ysqlnoDB存儲(chǔ)引擎中,行大小限制為 65,535 字節(jié)。但是,這個(gè)限制不包括 BLOB 和 TEXT 列,因?yàn)樗鼈兇鎯?chǔ)在另外的頁(yè)中。
在MyISAM存儲(chǔ)引擎中,行大小限制為 65,535 字節(jié),但是這個(gè)限制包括 BLOB 和 TEXT 列。如果行大小超過(guò)了 65,535 字節(jié),將會(huì)出現(xiàn)“行太大”的錯(cuò)誤。
需要注意的是,行大小限制不僅受到存儲(chǔ)引擎的限制,還受到表的結(jié)構(gòu)限制。例如,如果一個(gè)表有很多列,每列都是CHAR(255),那么這個(gè)表的行大小將會(huì)非常大,即使沒(méi)有超過(guò)存儲(chǔ)引擎的限制。
如果需要存儲(chǔ)超過(guò)限制的數(shù)據(jù),可以考慮使用BLOB或TEXT列類型,或者將數(shù)據(jù)拆分成多個(gè)表或者多個(gè)字段。
假設(shè)有一個(gè)表,包含以下列:
- id:INT類型,占用4字節(jié)ame:VARCHAR(255)類型,占用1字節(jié)+字符數(shù):TEXT類型,占用1字節(jié)+字符數(shù)
noDBamenoDB存儲(chǔ)引擎的限制。