sql创建一个触发器当删除产品表中的产品时将入库以及出库记录中对应的产品信息一起删除
时间: 2024-09-19 17:16:47 浏览: 47
基于SQL SERVER触发器技术的实现.pdf
在SQL中,可以创建一个叫做“触发器”(Trigger)的机制,它是一种特殊的存储过程,会在特定数据库操作(如INSERT、UPDATE或DELETE)发生时自动执行。为了实现当删除产品表(通常假设是`products`表)中的产品时,同时也删除相关的入库(`inventories`)和出库(`shipments`)记录,你可以创建一个`AFTER DELETE`触发器。这是一个示例:
```sql
CREATE TRIGGER delete_inventory_and_shipment
AFTER DELETE ON products
FOR EACH ROW
BEGIN
-- 删除入库记录中的关联产品ID
DELETE FROM inventories WHERE product_id = OLD.product_id;
-- 删除出库记录中的关联产品ID
DELETE FROM shipments WHERE product_id = OLD.product_id;
END;
```
在这个例子中,`OLD.product_id`代表被删除的产品的旧ID。这个触发器会在`products`表上删除任何一个产品后立即执行,删除相应的库存和发货记录。
阅读全文