态
我有一个类似的问题Python Pysqlite不接受我的Qmark参数化
我的问题是:我想要一个类似某物的字符串的参数化搜索,而不是字符串本身。
这是我的说法:
command = "select id, l from testDT where l like '%, ?]'"
cur.command(command, (123,))
pysqlite返回以下错误:
pysqlite2.dbapi2.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 0, and there are 1 supplied.
我确实知道这是由于Qmark被解释为文字。但是,我不知道如何在没有被解释为文字的Qmarks的情况下指定此类"喜欢"搜索Qmarks。
以下搜索成功:
command = "select id, l from testDT where l like '%, {x}]' "
command = command.format(x=123)
cur.execute(command)
,据我所知,这正是人们应该使用格式()函数的方式。
command = "select id, l from testDT where l like ? "
cur.command(command, ('%, 123]',))