mysql的表最多可设置多少字段?

一、前言

      最近在开发的时候,遇到一个报错:Can't create tablexxx(errno: 185 "Too many columns")根据英文,意思是表的字段太多了,那么mysql的数据表最多能有多少列呢?

      怀着虔诚的心态打开百度,连着搜了好几篇文章,答案都一模一样:

mysql每个表要求的最大列是1024,每个数据库最多可创建20亿个表等等?????

      是的,大家都这么说,但是这个1024是哪里来的呢,有科学依据(官方承认)吗?博主算了下自己的表,只有1008个字段左右,很明显是不超过1024的,但是还是报错了。这么看来,这个1024列的说法也不过是以讹传讹罢了。下面我们来扒一扒那些官方的说法。

二、mysql官方回答

1、MySQL 5.5官方给出的说法

      MySQL对每个表有4096列的硬限制,但是对于给定的表,有效最大值可能会更少。确切的列限制取决于几个因素:

(1)表的最大行大小限制了列的数量(可能还有大小),因为所有列的总长度不能超过该大小。
请参阅 行大小限制。

(2)单个列的存储要求限制了给定最大行大小内的列数。某些数据类型的存储要求取决
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章