原谅我的无知,因为我是我们的新手。我只是想将一个参数传递给一个语句:
cursor.execute(“从blah_table选择blah,其中blah_field =?”,blah_variable)
这会将blah_variable中的任何内容视为char数组,所以如果我传递“hello”,它将抛出一个ProgrammingError,告诉我1个参数是预期的,但是给出了5个。
我试过浏览文档,但他们的例子没有使用变量。谢谢!
答案 0 :(得分:1)
IT期待一系列参数。使用:
[blah_variable]
答案 1 :(得分:1)
cursor.execute()
调用需要一个可迭代的params
参数。 The documentation only hints at it,但代码实际上解包了参数并将其传递给另一个函数:
# from oursqlx/cursor.pyx:121
# in Cursor.execute()
else:
stmt.execute(*params)
您需要按照以下方式说出您的电话:
cursor.execute("select blah from blah_table where blah_field = ?", [blah_variable]) # brackets!