У меня есть эта строка, которая работает нормально:
c.execute('select cleanseq from cleanseqs WHERE newID="%s"'%name)
Но я хочу использовать подстановку параметров SQLite вместо подстановки строк (потому что я вижу здесь , что это безопаснее).
Это моя (неудачная) попытка:
t = (name,)
c.execute('select cleanseq from cleanseqs WHERE newID="?"',t)
Но эта строка возвращает:
'Неверное количество привязок
в комплект поставки. Текущий оператор использует
0, и поставляются 1. '
Так что левая часть моего утверждения не работает. Я предоставляю одну привязку (имя, в т), но кажется, что вопросительный знак (?) Не анализируется. Если я удаляю кавычки, оканчивающиеся на?, Это работает. Но я хочу, чтобы цитаты оставались там, так как я помню, что есть случаи, когда они мне нужны.
Итак, вопрос: как мне преобразовать эту строку:
c.execute('select cleanseq from cleanseqs WHERE newID="%s"'%name)