mysql получает last_insert_id () в триггере

Насколько я понимаю, когда вы вызываете last_insert_id (), он идет по соединениям, поэтому вы получите идентификатор последней строки, вставленной в то же соединение, где вызывается last_insert_id (), верно?

Так что, если я вызову last_insert_id () в триггере AFTER INSERT?

В основном я хочу сделать это

DELIMITER $$
CREATE TRIGGER sometrigger
AFTER INSERT ON sometable
BEGIN
  INSERT INTO anothertable (id, lastup) VALUES (last_insert_id(), NOW());
END $$

Очень важно, чтобы идентификатор в 'anothertable' был таким же, как в 'sometable ' Сработает ли это, или я должен вместо этого создать хранимую процедуру, которая вставляется в обе таблицы?

Или, возможно, в триггере есть какие-то средства для получения значений из оператора вставки, вызвавшего срабатывание триггера? Я ничего об этом не нашел.

13
задан Steinthor.palsson 27 June 2011 в 21:54
поделиться