2011-05-20 89 views
1

我在一个表上创建了一个触发器,以在另一个表上插入。触发查询似乎是好到我所知,但我得到的错误:MySQL错误代码1017

Error Code : 1017
Can't find file: '.\rtasys\@[email protected]' (errno: 22)

我的触发查询:

DELIMITER $$ CREATE 
/*[DEFINER = { user | CURRENT_USER }]*/ 
TRIGGER `rtasys`.`on_insert_ozekimessagein` AFTER INSERT 
ON `rtasys`.`<ozekimessagein>` 
FOR EACH ROW BEGIN 

INSERT INTO ozekimessageout SET ozekimessageout.`receiver`=NEW.sender; 
INSERT INTO ozekimessageout SET ozekimessageout.`msg`=NEW.msg; 
INSERT INTO ozekimessageout SET ozekimessageout.`status`=NEW.sender; 

END$$ DELIMITER ; 
+0

是表引擎相同吗?..我问下面这个问题:http://forums.mysql.com/read.php?35,134778,134778#msg-134778 – 2011-05-20 11:53:37

+0

thankx!该表格与我如何命名表格不相似 – ngunjirimacharia 2011-05-20 13:01:53

+0

与所有表格类似。可能是这个帮助。并给出表格来源,它会帮助找到解决方案 – 2011-05-20 13:08:04

回答

4

MySQL不能找到ozekimessageout表定义文件(.FRM)。尝试:

REPAIR TABLE ozekimessageout; 

或重新创建表ozekimessageout。文件也可能存在,但MySQL没有权限读取它。检查文件rtasys\@[email protected]是否存在,MySQL有权读取/写入/更新它。