我有一个模型执行实例的性能数据,我试图存储在Django(sqlite后端)中。每个计时器有435个定时器具有11个不同的属性,导致每次运行需要存储4,785个唯一值。我编写了生成models.py代码的代码。它有1,564列,并抛出以下错误。由于我检查了models.py文件,因此没有该名称的重复列。当我用模型文件中的下一行切换该行(并进行新的迁移)时,它会以相同的行号而不是新的列名死掉。
第一次通过:
django.db.utils.OperationalError: duplicate column name: CAM_export_processes
第二次:
django.db.utils.OperationalError: duplicate column name: CAM_export_threads
我在这里遇到什么限制?
答案 0 :(得分:0)
SQLITE_MAX_COLUMN的默认设置为2000.
这来自SQLite documentation。如果您在表中存储超过1000列,那么您肯定做错了(tm) 。
虽然你的数学可能是合理的,但是django有可能为自己的元数据投入一些额外的列,这会让你更接近(或超过)限制。
认真重新考虑存储此数据的方法。