我的数据库中有大约140列。我将立即写入所有列,并将所有列存储在列表中。
但是,如果我这样做:
c_all.execute('''INSERT OR IGNORE INTO match('''+sql_column_string+''') VALUES ('''+sql_write_qmark''')''',(columns,))
其中sql_column_string是140列的格式,如column1,column2,...和sql_write_qmark为140'?,'
然后我发现呻吟声称:
ProgrammingError: Incorrect number of bindings supplied. The current statement uses 140, and there are 1 supplied.
它正确地意识到我想要140列,实际上len(列)产生140,但它只需要1个参数。
我需要以某种方式将列扩展为140个绑定。我已经尝试了元组(列),我已经尝试了(列中的列列),但每次它都给我同样的错误。
如何才能将列表视为140个绑定,而不是一个?
答案 0 :(得分:1)
您是否尝试过直接传递c_all.execute('SQL_STATEMENT', columns)
# ^~~~~~~
?
{{1}}