0

tarifa_data에 삽입 할 때 문제가 있습니다. 이 표는 translator_tarifes_data_facturaciotarifes_translator과 관련된 것입니다. translator_tarifes_data_facturacio 테이블에서 ID 관계 tarifa_datatarifes_translator을 모두 저장하려고합니다. I는 각 행에 대한 아이디 translator_tarifes_data_facturacio 삽입이 트리거를 생성 tarifa_data에서 table design http://project2be.com/stack/tables.png관련된 테이블에 트리거 삽입하기

: 여기

디자인 테이블이다. 이 트리거입니다 :

USE `proje169_gl`; 
DELIMITER $$ 

CREATE TRIGGER `TRG_INSERT_id_init` AFTER INSERT ON `tarifa_data` FOR EACH ROW 
BEGIN 
    INSERT INTO translator_tarifes_data_facturacio (tarifa_data_id) VALUES (NEW.id); 
END 

내가 예를 내가이 오류 받고 있어요 INSERT INTO tarifa_data(id, data) VALUES ('1','2013-12-15 00:00:00')에 대한 tarifa_data에 삽입 :

#1452 - Cannot add or update a child row: a foreign key constraint fails (`proje169_gl`.`translator_tarifes_data_facturacio`, CONSTRAINT `fk_translator_tarifes_data_facturacio_tarifes_translator1` FOREIGN KEY (`tarifes_translator_id`) REFERENCES `tarifes_tra) 

어떤 생각을?

편집 : 테이블 translator_tarifes_data_facturacio에 삽입 할 때

table design http://project2be.com/stack/tables1.png

답변

1

당신이 두 열 tarifa_data_idtarifes_translator_id에 대한 값을 필요 :이 전체 테이블입니다.

시도 :

DELIMITER $$ 

CREATE TRIGGER `TRG_INSERT_id_init` AFTER INSERT ON `tarifa_data` 
FOR EACH ROW 
BEGIN 
    INSERT INTO `tarifes_translator` (`id`) VALUES (NULL); 
    INSERT INTO `translator_tarifes_data_facturacio` (`tarifa_data_id`, `tarifes_translator_id`) VALUES (NEW.`id`, LAST_INSERT_ID()); 
END$$ 

DELIMITER ; 

SQL Fiddle demo

+0

그러나, 나는'tarifes_translator'과 같은 방식에'translator_tarifes_data_facturacio'와 관련된 다른 테이블이있는 경우, 내가 그걸 어떻게 할 수 있습니까? – ganlub

+0

@acasanovas : 다른 테이블을 표시 할 수 있고 "translator_tarifes_data_facturacio"테이블과 관련된 정보가 도움이 될 수 있다면. – wchiquito

+0

이미지는 다음과 같습니다. [table design] (http://project2be.com/stack/tables1.png) – ganlub