mysql数据库表可以包含120多列吗

amrnrhlw  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(255)

当mysql server表包含120多列时会出现什么问题?

ax6ht2ek

ax6ht2ek1#

如果一个表中有120列,那么最好将其拆分为多个表,这是一种不好的做法。
由于mysql以关系数据库著称,所以要建立基于关系的表结构。
一旦您的应用程序变得更大,问题列表就会出现。
应用程序变得很慢(因为从表中提取数据的速度很慢)。
如果您的网速很慢,则可能无法载入应用程式页面。
如果由于列的数量而一次加载了大量数据,那么您的服务器需要更多的带宽。
您可能无法在移动中打开,因为移动可以更好地处理少量数据。
https://dba.stackexchange.com/questions/3972/too-many-columns-in-mysql

There is a hard limit of 4096 columns per table, but the effective maximum may be less for a given table. The exact limit depends on several interacting factors.

Every table (regardless of storage engine) has a maximum row size of 65,535 bytes. Storage engines may place additional constraints on this limit, reducing the effective maximum row size.

The maximum row size constrains the number (and possibly size) of columns because the total length of all columns cannot exceed this size.

...

Individual storage engines might impose additional restrictions that limit table column count. Examples:

InnoDB permits up to 1000 columns.
iqjalb3h

iqjalb3h2#

从技术Angular 看,mysql文档5.7没有考虑在一个表中需要120列的原因,它说:
列计数限制
mysql对每个表有4096列的硬限制,但是对于给定的表,有效的最大值可能更小。
https://dev.mysql.com/doc/refman/5.7/en/column-count-limit.html

相关问题