我想在 sqlite 数据库中创建一个包含多列的表,比如说大约 100 列。有没有比单独命名每一列更好的解决方案?我正在尝试以下操作:
conn = sqlite3.connect('trialDB')
cur = conn.cursor()
listOfVars = ("added0",)
for i in range(1,100):
newVar = ("added" + str(i),)
listOfVars = listOfVars + newVar
print listOfVars
for i in listOfVars:
cur.execute('''ALTER TABLE testTable ADD COLUMN ? TEXT''',(i,))
conn.commit()
cur.close()
conn.close()
但是我得到以下错误:
OperationalError: near "?": syntax error
有人可以建议我该怎么做吗?谢谢!
最佳答案
我猜你可以通过字符串格式化来做到这一点,就像这样:
for i in listOfVars:
cur.execute('''ALTER TABLE testTable ADD COLUMN %s TEXT''' % i)
但是在一个 sqlite 数据库中有 100 列肯定不常见,你确定有一个正确的数据库设计吗?
关于python - 将多列添加到python中的sqlite数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3988055/