drop table if exists tab1;
create table tab1(
tab1_id varchar(11)
);
drop table if exists tab2;
create table tab2(
tab2_id varchar(11)
);
drop trigger if exists t_afterinsert_on_tab1;
create trigger t_afterinsert_on_tab1 after insert on tab1 for each row
begin
insert into tab2(tab2_id) values(new.tab1_id);
end;
各位大神,我在网上找了一个很简单的trigger样例,但是还是出错了,我下载的是mysql官网上最新的,用的是mysql workbench,
insert into tab2(tab2_id) values(new.tab1_id);
end;
这两句话有语法错误,end说是语义错误,unexpected END,然后 values(new.tab1_id);的")"也显示有语义错误,unexpected end_of_input,expecting ";"
是oracle公司的mysql,被trigger搞了一个晚上了!真正的语法应该什么样的,非常困惑啊!MySQL
create table tab1(
tab1_id varchar(11)
);
drop table if exists tab2;
create table tab2(
tab2_id varchar(11)
);
drop trigger if exists t_afterinsert_on_tab1;
create trigger t_afterinsert_on_tab1 after insert on tab1 for each row
begin
insert into tab2(tab2_id) values(new.tab1_id);
end;
各位大神,我在网上找了一个很简单的trigger样例,但是还是出错了,我下载的是mysql官网上最新的,用的是mysql workbench,
insert into tab2(tab2_id) values(new.tab1_id);
end;
这两句话有语法错误,end说是语义错误,unexpected END,然后 values(new.tab1_id);的")"也显示有语义错误,unexpected end_of_input,expecting ";"
是oracle公司的mysql,被trigger搞了一个晚上了!真正的语法应该什么样的,非常困惑啊!MySQL
你试试
delimiter //create trigger t_afterinsert_on_tab1
after insert on tab1 for each row
begin
insert into tab2(tab2_id) values(new.tab1_id);
end//delimiter ;
create table tab1(
tab1_id varchar(11)
);
Query OK, 0 rows affectedQuery OK, 0 rows affectedmysql> drop table if exists tab2;
create table tab2(
tab2_id varchar(11)
);
Query OK, 0 rows affectedQuery OK, 0 rows affectedmysql> drop trigger if exists t_afterinsert_on_tab1;
create trigger t_afterinsert_on_tab1 after insert on tab1 for each row
begin
insert into tab2(tab2_id) values(new.tab1_id);
end;
Query OK, 0 rows affectedQuery OK, 0 rows affected
我表示我的没问题啊。。也是5.6版本的
create table tab1(
tab1_id varchar(11)
);
drop table if exists tab2;
create table tab2(
tab2_id varchar(11)
);
drop trigger if exists t_afterinsert_on_tab1;
create trigger t_afterinsert_on_tab1 after insert on tab1
for each row
insert into tab2(tab2_id) values(new.tab1_id);
create table tab1(
tab1_id varchar(11)
);
drop table if exists tab2;
create table tab2(
tab2_id varchar(11)
);
drop trigger if exists t_afterinsert_on_tab1;
DELIMITER $$
create trigger t_afterinsert_on_tab1 after insert on tab1 for each row
begin
insert into tab2(tab2_id) values(new.tab1_id);
end$$
DELIMITER ;