Я хочу использовать этот запрос:
select x from y where z in ("a", "b", "c")
У меня есть pymysql и mysql.connector для MySQL с Python.
Это работает с pymysql:
args = ["a", "b", "c"]
db = cur.execute('select x from y where z in %s',(tuple(args),))
Но это не работает с mysql.connector. Это дает мне ошибку, например, объект «MySQLConverter» не имеет атрибута «_tuple_to_mysql».
У pymysql есть отличное решение, но я не мог понять это на mysql.connector. Не могли бы вы мне помочь?
?
в качестве заполнителя, вместо этого просто используйте%s
в качестве заполнителя параметра SQL. Вторая ссылка в этом комментарии генерирует:i0
и т. д. именованные заполнители; более сложный и, вероятно, здесь не нужен. - person Martijn Pieters   schedule 31.05.2014