【发布时间】:2014-01-02 22:38:09
【问题描述】:
我在插入tarifa_data 时遇到问题。该表与translator_tarifes_data_facturacio 相关,而这与tarifes_translator 相关。在translator_tarifes_data_facturacio 表上,我想同时保存id 关系tarifa_data 和tarifes_translator。
这是设计表: table design http://project2be.com/stack/tables.png
在tarifa_data 上,我创建了这个触发器,以便将每一行的id 插入translator_tarifes_data_facturacio。这是触发器:
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
当我在 tarifa_data 上插入时,例如 INSERT INTO tarifa_data(id, data) VALUES ('1','2013-12-15 00:00:00') 我收到此错误:
#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)
有什么想法吗?
编辑:这是整个表格:
【问题讨论】:
标签: mysql database-design triggers relational-database foreign-key-relationship