每个表可以存在多少列

时间:2010-09-03 12:11:40

标签: sql

每个表可以存在多少列

4 个答案:

答案 0 :(得分:6)

限制将根据您正在运行的数据库引擎以及某些引擎(可能是配置)而有所不同。

实际答案是:尽可能多的。如果您接近实际限制,那么您在数据库设计中遇到了一些错误。

答案 1 :(得分:1)

取决于您的SQL-Server并使用您使用的列类型。

  • 对于MySQL see here
  • 同样适用于PostGres:规格说明“每个表250 - 1600的最大列数取决于列类型”here

答案 2 :(得分:1)

我同意其他人的意见。这取决于你的DBMS(Oracle,SQL,MySQL,等等),它还取决于版本。

例如在SQL server 7,2000和& 2005年的限制是每个 base 表1024列。然而,在SQL 2008中,有非广泛的&宽表格,分别限制在1024和30,000列。 Microsoft有一个“最大容量规范”文档,其中列出了各种限制,例如每个表的列数或每个存储过程的参数。

某些DBMS中更可能的限制是行大小 - 每行可以在数据上行多长时间。例如,在SQL Server 2000中,每行限制为8K。 SQL Server 2008有一个称为行溢出存储的功能,可以将一行中的大数据推送出去,从而消除了8k的限制。

我也同意其他人的意见,如果您接近列限制,您的数据库需要重新设计。

答案 3 :(得分:0)

这取决于您使用的数据库和该数据库的版本。

如果你不得不提出这个问题,那么你几乎总是需要重构你的设计。