Запрос относительно заполнителя в инструкции SELECT в библиотеке sqlit3 - PullRequest
0 голосов
/ 05 июля 2019

Я создал таблицу и добавил в нее записи, но я хочу распечатать каждую запись, поскольку я добавляю больше записей. Но приведенный ниже код, похоже, не работает для меня .. Кстати, я ввожу модель от пользователя ..

Cursor.execute("SELECT * FROM Top_Cars WHERE MODEL=?;",(model))
print(Cursor.fetchone())

1 Ответ

0 голосов
/ 05 июля 2019

Это распространенная ошибка с кортежами.(model,) - это 1-кортеж, но (model) - это просто выражение в скобках, содержащее только model.Поскольку строка представляет собой итерацию символов, execute видит столько связываний, сколько букв в слове model.Исправьте это тривиально:

Cursor.execute("SELECT * FROM Top_Cars WHERE MODEL=?;",(model,))

или:

Cursor.execute("SELECT * FROM Top_Cars WHERE MODEL=?;",[model])
...