Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Вывести содержимое ячейки базы данных

многабукаф Знаток (390), на голосовании 1 месяц назад
Здравствуйте!
print(cursor.execute("SELECT posting_number FROM BAZA WHERE id=?", '10').fetchone()[0])
при id меньше 10 все работает.
когда id становится 10 и более то выходит ошибка
ProgrammingError: Incorrect number of bindings supplied. The current statement uses 1, and there are 2 supplied.
в базе содержится 15 строк...
подскажите пожалуйста что не так
Голосование за лучший ответ
Оракул Оракул (62115) 2 месяца назад
Ваш селект принимает 1 параметр, а вы передаете 2
Об этом ошибка, а не о том, что больше или меньше 10
многабукафЗнаток (390) 2 месяца назад
как исправить?
print(cursor.execute("SELECT posting_number FROM BAZA WHERE id=?", '9').fetchone()[0])
этот запрос прекрасно работает
Павел Михаловский Просветленный (36326) 2 месяца назад
 idArg = str(10)
query = "SELECT posting_number FROM baza where id = ?"
print(cursor.execute(query,(idArg)).fetchone()[0])

Попробуй так. Мой тебе совет на будущее - не лепи всё в одну строку. Код тяжелее читать, когда все в одном месте.
многабукафЗнаток (390) 2 месяца назад
не работает
Павел МихаловскийПросветленный (36326) 2 месяца назад
 idArg = str(10) 
query = "SELECT posting_number FROM baza where id = "+idArg
print(cursor.execute(query).fetchone()[0])
Похожие вопросы