2011-08-21 111 views
0

我正在写一个插入后触发器,它将数据插入到从emp_sup表中获取数据的list_of_requests表中。使用'insert into .. select ...'语句创建触发器

create trigger trig_lor 
after insert 
on employee_skillset 
for each row begin 
    insert into list_of_requests (APPROVER1,APPROVER2,LOGDATE) 
    select sup1,sup2,'#dateFormat(now(),"yyyy/mm/dd")#' from empsup 
     where empno=NEW.employee_number 
end 

这是给错误为:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'trigger trig_lor after insert on employee_skillset for each row begin inse' at line 1

如何使这项工作?

+1

你有什么MySQL版本? – Mchl

回答

0

未经测试,但试试看。

delimiter // 
drop trigger if exists trig_lor // 
create trigger trig_lor 
after insert 
on employee_skillset 
for each row 
begin 
insert into list_of_requests (APPROVER1,APPROVER2,LOGDATE) 
select sup1,sup2,curdate() from empsup where empno=NEW.employee_number; 
end; // 
delimiter ; 
+0

抱歉:(不工作..它提供相同的语法错误 – sanjeev

+0

@sanjeev - 适用于我。你是否直接在mySQL中运行命令? – Leigh

+0

@leigh我会说他正在'cfquery'中运行这个判断#dateformat#'在问题中 - 可能是数据源的权限问题? – Antony