因此,基本上,我有一个学校项目,它要求我编写一个程序来帮助两个兼容的人见面。他们必须回答不同的问题,然后程序将比较结果。 因此,我想问21个问题,我试图将21个答案插入数据库的一个表中,但是它不起作用。例如,有9个问题,它运行良好,代码如下:
import sqlite3
connexion = sqlite3.connect("Test Numero 106")
cur= connexion.cursor()
cur.execute('''CREATE TABLE IF NOT EXISTS aaa(q1 TEXT, q2 TEXT, q3 TEXT, q4 TEXT, q5 TEXT, q6 TEXT, q7 TEXT, q8 TEXT, q9 TEXT, q10 TEXT, q11 TEXT, q12 TEXT, q13 TEXT, q14 TEXT, q15 TEXT, q16 TEXT, q17 TEXT, q18 TEXT, q19 TEXT, q20 TEXT, q21 TEXT);''')
ans=['A', ' A', ' A', ' A', ' A', ' A', ' A', ' A', ' A', ' A ', 'A', ' A', ' A', ' A', ' A', ' A', ' A', ' A', ' A', ' A','A']
if ans[1]=='A' and ans[2]=='A'and ans[3]=='A':
cur.execute('''INSERT INTO aaa (q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15,q16,q17,q18,q19,q20,q21) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)''', ans)
connexion.commit()
列表“ ans”是某个人输入的答案,我正在尝试将它们插入到某个表中,但它们没有用。 我正在使用“ pyzo”的软件不会告诉我代码中有错误,但是当我想在某个表中查看信息时,它是空的。
答案 0 :(得分:1)
python sqlite docs显示“ execute”命令的第二个参数必须是一个元组。您可以尝试一下,看看是否可行吗?
cur.execute('''INSERT INTO aaa (q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12,q13,q14,q15,q16,q17,q18,q19,q20,q21) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)''', tuple(ans))