SQLite3表中的最大列数是多少?我找到了一些答案:最大列数一个表中的最大列数是32767。SQLITE_MAX_COLUMN的默认设置为2000。但当列数为1000时,我看到了超过最大列数的错误。那么,哪一个是正确的呢?我将SQLAlChemy 1.3.8与Python一起使用。
yftpprvb1#
我认为你自己已经回答了你的问题。根据这里的官方文件here最大列数SQLITE_MAX_COLUMN编译时参数用于设置以下各项的上限:
SQLITE_MAX_COLUMN的默认设置为2000。您可以在编译时将其更改为最大为32767的值。另一方面,许多有经验的数据库设计人员会争辩说,一个标准化良好的数据库在一个表中永远不需要超过100列。Other Use完整答案您可以在此处找到:How to change SQLITE_MAX_COLUMN in Python?这里:How to increase column limit of a table in SQLite?
pokxtpni2#
SQLITE_MAX_COLUMN的默认设置为2000。您可以在编译时将其更改为最大为32767的值。另一方面,许多有经验的数据库设计人员会争辩说,一个标准化良好的数据库在一个表中永远不需要超过100列。https://sqlite.org/limits.html有关增加列限制的说明,请参阅此链接。https://dba.stackexchange.com/questions/221508/how-to-increase-column-limit-of-a-table-in-sqlite
zpgglvta3#
你的问题没有一般的答案。正如您已经发现的,可配置的最大列数是32767。然而,关键是它是可配置的,所以它可以调整。比较https://www.sqlite.org/limits.html可以在运行时使用SQLITE_LIMIT(db,SQLITE_LIMIT_COLUMN,SIZE)接口降低最大列数。在您的情况下,似乎已经将限制设置为1000,因为您显然遇到了这个限制。然而,上面的页面继续说[.]许多有经验的数据库设计人员会争辩说,一个标准化良好的数据库在一个表中永远不需要超过100列。因此,您可能希望增加SQLITE_MAX_COLUMN设置,或者重新考虑您的数据库设计。
3条答案
按热度按时间yftpprvb1#
我认为你自己已经回答了你的问题。
根据这里的官方文件here
最大列数
SQLITE_MAX_COLUMN编译时参数用于设置以下各项的上限:
SQLITE_MAX_COLUMN的默认设置为2000。您可以在编译时将其更改为最大为32767的值。
另一方面,许多有经验的数据库设计人员会争辩说,一个标准化良好的数据库在一个表中永远不需要超过100列。
Other Use完整答案您可以在此处找到:How to change SQLITE_MAX_COLUMN in Python?
这里:How to increase column limit of a table in SQLite?
pokxtpni2#
SQLITE_MAX_COLUMN的默认设置为2000。您可以在编译时将其更改为最大为32767的值。另一方面,许多有经验的数据库设计人员会争辩说,一个标准化良好的数据库在一个表中永远不需要超过100列。
https://sqlite.org/limits.html
有关增加列限制的说明,请参阅此链接。
https://dba.stackexchange.com/questions/221508/how-to-increase-column-limit-of-a-table-in-sqlite
zpgglvta3#
你的问题没有一般的答案。正如您已经发现的,可配置的最大列数是32767。然而,关键是它是可配置的,所以它可以调整。比较https://www.sqlite.org/limits.html
可以在运行时使用SQLITE_LIMIT(db,SQLITE_LIMIT_COLUMN,SIZE)接口降低最大列数。
在您的情况下,似乎已经将限制设置为1000,因为您显然遇到了这个限制。然而,上面的页面继续说
[.]许多有经验的数据库设计人员会争辩说,一个标准化良好的数据库在一个表中永远不需要超过100列。
因此,您可能希望增加SQLITE_MAX_COLUMN设置,或者重新考虑您的数据库设计。