表:
create table produto
(
referencia varchar(3) primary key,
descricao varchar(50) unique,
estoque int not null default 0,
preco_normal decimal(10,2),
preco_desconto decimal(10,2)
);
触发器(我尝试创建它没有分隔符也无济于事):
delimiter //
create trigger desconto before insert
on produto
for each row
begin
if new.estoque < 5 then
set new.preco_desconto = new.preco_normal * 0.90;
else
set new.preco_desconto = new.preco_normal;
end if;
end//
delimiter ;
触发结果:
但是当我使用drop trigger if exists desconto;
时
输出显示 * 触发器不存在 *
有什么解决办法吗?
1条答案
按热度按时间fjaof16o1#
您是否正在使用DBeaver的生产环境?
如果是这样,则可能需要在运行查询后COMMIT更改,以实际应用更改。在DBeaver 23.0.0中,请选中下面位于顶部栏旁的Commit按钮。