根据INSERT ... ON DUPLICATE KEY UPDATE的结果,在表中插入一行

时间:2017-03-07 04:09:09

标签: mysql

在mysql中,使用

INSERT ... ON DUPLICATE KEY UPDATE

可以在表格中插入一行,如果已存在则只更新它。

在纯mysql中,有没有办法在不同的表中有条件地插入一行,具体取决于插入或更新是否发生?

1 个答案:

答案 0 :(得分:0)

drop PROCEDURE if EXISTS pro;
create PROCEDURE pro(a int)
begin
declare sign int;
insert into tab1(id) values(a) ON DUPLICATE KEY UPDATE id=id;
SELECT ROW_COUNT() into sign from dual;

if (sign=1) then
select 'yes' from dual;
else
select 'no' from dual;
end if;

end;
call pro(8);