我想创建一个包含很多列的sqlite表。
表和sqlite代码看起来像......
cur.execute('''CREATE TABLE MyTable
(AAA INTEGER PRIMARY KEY AUTOINCREMENT,
BBB INTEGER,
Col_1 TEXT,
Col_2 TEXT,
Col_3 TEXT,
Col_4 TEXT,
........There are 1000x columns here......
Col_1000 TEXT);
''')
因为列数太多,我使用列表来生成列名。
SQL_Title_List = []
for i in range(1, 1001, 1):
Temp = "Col_" + str(i)
SQL_Title_List.append(Temp)
我的问题是,如何编写专业的SQL代码?手动编写它们会非常痛苦。
感谢您的帮助!
答案 0 :(得分:3)
请不要这样做。这是一个非常非SQL的事情。相反,您应该创建另一个包含三行的表 - main_row_id(主表的外键),col_number(数字1到1000),值(文本字段)。
因此,每行不是1,000列,而是每行第二个表中有1,000个记录。
另一方面,如果你需要存储这样的表,因为它有意义,你不应该使用SQLite而是其他东西。我会看看熊猫。