Как я могу удалить строки из таблицы базы данных, где идентификатор не найден в кортеже / списке - PullRequest
0 голосов
/ 31 мая 2019

Скажите, у меня есть кортеж идентификаторов:

ids = (1,2,3,4,5)

Используя python, я хочу удалить каждую строку из таблицы базы данных (называемой расписанием), которая не содержит ни одного из этих идентификаторов.

Вот что я пробовал:

delete_stmt = "DELETE from schedule WHERE ID NOT IN %s"
...
cursor.execute(delete_stmt, ids)

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

Я получаю сообщение об ошибке:

You have an error in your SQL syntax...

Как я могу исправить свой код, чтобы удалить строки из таблицы расписания, которые не найдены в кортеже ids?

1 Ответ

1 голос
/ 31 мая 2019

IN - это функция MySql, попробуйте ее с ()

delete_stmt = "DELETE from schedule WHERE ID NOT IN (%s)"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...