2
create trigger nuevaVenta
after insert on Compra
if new.idProducto = Productos_Farmaceuticos.idProducto
        set Productos_Farmaceuticos.inventario = Productos_Farmaceuticos.invetario - new.cantProducto;

新しい販売が行われた後、在庫数を更新しようとしています。ここに私のテーブルがあります:

Paciente: idPaciente, nombre
Compra: idProducto, idPaciente, fecha, cantProduct
Productos_Farmaceuticos: idProducto, nombreProduct, precioProduct, puntoReorden, inventario

これは、構文エラーを示さない更新です。

delimiter //
create trigger nuevaVenta
after insert on medapp.Compra
for each row
begin
    if new.idProducto = Productos_Farmaceuticos.idProducto then
        update medapp.Productos_Farmaceuticos
        set Productos_Farmaceuticos.inventario = 
            Productos_Farmaceuticos.invetario - new.cantProduct;
    end if;
end; //
delimiter ;

Compraに何かを挿入しようとすると、「エラーコード1109:フィールドリストに不明なテーブル 'Productos_Farmaceuticos'」が表示されるようになりました

4

1 に答える 1

0

この行にエラーがあると思います:

end; //

区切り文字を「//」に変更しました。したがって、この行は単純に読む必要があります。

end //
于 2013-10-30T15:34:50.880 に答える