man kažkodėl meta klaidą, kai bandau įrašyti duomenis į tėvinę lentą.
#1442 - Can't update table 'vocabulary' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
Trigeris:
DROP TRIGGER IF EXISTS `vertimai_INSERT` ;
CREATE DEFINER = `root`@`localhost` TRIGGER `vertimai_INSERT` BEFORE INSERT ON `vocabulary`
FOR EACH ROW
BEGIN
IF( NEW.oxtype <>3 )
THEN
INSERT INTO `vertimai` (id,lt,lv,ee,ru,en,se,fi,no,dk)
VALUES (
NEW.OXID, NEW.oxtrans_LT, NEW.oxtrans_LV, NEW.oxtrans_EE, NEW.oxtrans_RU, NEW.oxtrans_EN, NEW.oxtrans_SE, NEW.oxtrans_FI, NEW.oxtrans_NO, NEW.oxtrans_DK
);
END IF ;
END
insertas:
INSERT INTO `vocabulary` (`OXID`, `OXTYPE`, `OXTRANS_LT`, `OXTRANS_LV`, `OXTRANS_SE`, `OXTRANS_FI`, `OXTRANS_EN`, `OXTRANS_EE`, `OXTRANS_RU`, `OXTRANS_PL`, `OXTRANS_NO`, `OXTRANS_DK`) VALUES ('12345678901234567890123456789011', '2', 'rgthyer', 'wrhtwhtw', '', '', '', '', '', '', '', '')
problema kaip suprantu yra "IF( NEW.oxtype <>3 )", ka siššaukia trigerio cikliškumą. Kaip apeiti šią vietą? Noriu tik tam tikrus įrašus perkelti į kitą lentutę (konkrečiai jeigu oxtype nelygu 3).