2015-12-10 1 views
3

Python, Twistd и SO новичок.Python Twistd MySQL - Получить обновленный идентификатор строки (не вставляя)

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

Основные Mysql таблицы

Таблица

  • ID

Сиденье

  • ID
  • table_id
  • Имя

Card

  • seat_id

В Seat и Table таблицы предварительно заполняется 'имя' столбцов изначально NULL.

Первого этап

Я хочу обновить имя места путем нахождения первого доступного места данного группы таблицы идентификаторов.

Второй этап

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

Я могу сделать первый этап, но понятия не имею, как это сделать Stage Stage, потому что lastrowid работает только для вставок, а не обновлений.

Любая помощь будет оценена по достоинству.

Использование twisted.enterprise.adbapi, если это помогает.

Приветствия

ответ

0

Я думаю, что лучший способ достижения этой цели является первым сделать выбор для идентификатора (или идентификаторов) из строки/строки, которые необходимо обновить, а затем обновить строку с ГДЕ соответствие обусловливающих id элемента для обновления. Таким образом, вы уверены, что обновили только конкретный элемент.

Оператор UPDATE может обновлять несколько строк, соответствующих вашим критериям. Вот почему вы не можете запросить последний обновленный идентификатор, используя встроенную функцию.

+0

Спасибо. Я думаю, что я пробовал это, но у меня, возможно, был неправильный запрос (должен был быть размещен здесь). Я закончил тем, что просто переработал таблицы и отношения, которые были настоящей болью, но, к счастью, это было еще очень ранние стадии. – WhiteFire