У меня есть запрос этой формы с использованием pysqlite:
query = "select * from tbl where field1 in ?"
variables = ['Aa', 'Bb']
В запросе я бы хотел, чтобы это работало:
with conn.cursor() as db:
res = db.execute(query, (variables,)).fetchall()
например, интерпретируется в командной строке SQLITE как:
select * from tbl where field1 in ("Aa", "Bb");
Но это не удается:
pysqlite3.dbapi2.InterfaceError: Error binding parameter 0 - probably unsupported type.
Я понимаю, что могу просто string.join ([mylist]), но это небезопасно. Как я могу использовать параметры заполнителя и список в sqlite с помощью Python?
Обновлять
Отличая этот от аналогичных вопросов в Stackoverflow, они, похоже, ищут используйте строковую интерполяцию% s, где я хочу избежать этого
?
, но все же я слишком ищу это. читая тоже самое. - person Anup Yadav   schedule 31.12.2018variables
неизвестна и может отличаться? - person Anoop R Desai   schedule 31.12.2018