На данный момент код триггера и определения таблиц такие:
PHP код:
CRETAE table tbl1 (Id_ int(32) not null auto_increment, str varchar(32) not null, primary key(Id_));
CREATE table tbl2 (Id_ int(32) not null auto_increment, Id int(32) not null, str varchar(32) not null, primary key(Id_));
CREATE TRIGGER new_tbl1 BEFORE INSERT ON tbl1
FOR EACH ROW
BEGIN
insert into tbl2 values(null, New.Id_, 'abc');
END;
При выполнении триггера New.Id_ равен 0. В этом состоит проблема.
Цитата:
делай предварительный запрос на max значение ключа и ++, это на поверхности...
|
Метод не прокатит, так как если мы добавляли записи в tbl2, а потом удалили несколько последних добавленных, то id будет вовсе не max++.
В будущем этот новый id должен внешним ключем стать для tbl2, может тогда можно как-то проще сделать?