微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在python中将多个列添加到sqlite数据库

我想在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 db中拥有100列肯定是不常见的,您确定要具有适当的db设计吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐