在mysql中,使用
INSERT ... ON DUPLICATE KEY UPDATE
可以在表格中插入一行,如果已存在则只更新它。
在纯mysql中,有没有办法在不同的表中有条件地插入一行,具体取决于插入或更新是否发生?
答案 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);