创建触发器对菜品进行增删的SQL语句
时间: 2024-01-01 17:05:28 浏览: 66
以下是创建触发器对菜品进行增删的SQL语句:
1. 创建触发器在插入菜品时自动更新菜品数量:
```
CREATE TRIGGER update_dish_quantity
AFTER INSERT ON dish
FOR EACH ROW
BEGIN
UPDATE dish_category
SET quantity = quantity + NEW.quantity
WHERE id = NEW.category_id;
END;
```
2. 创建触发器在删除菜品时自动更新菜品数量:
```
CREATE TRIGGER update_dish_quantity
AFTER DELETE ON dish
FOR EACH ROW
BEGIN
UPDATE dish_category
SET quantity = quantity - OLD.quantity
WHERE id = OLD.category_id;
END;
```
这些触发器是基于菜品和菜品分类之间存在一对多的关系,即一个菜品分类下有多个菜品,每个菜品都有数量属性。以上SQL语句中,`NEW`和`OLD`是指对应插入和删除操作的数据行,`quantity`是菜品数量属性,`category_id`是菜品分类ID属性。当插入或删除菜品时,触发器会自动更新对应菜品分类中的菜品数量。
相关问题
创建触发器sql语句
创建触发器的 SQL 语句如下所示:
```sql
CREATE TRIGGER trigger_name
{BEFORE | AFTER} {INSERT | UPDATE | DELETE} ON table_name
[FOR EACH ROW]
BEGIN
-- 触发器执行的逻辑代码
END;
```
其中,`trigger_name` 是你给触发器起的名字,`BEFORE` 或 `AFTER` 指定触发器执行的时间,可以是在操作之前或之后。`INSERT`、`UPDATE` 或 `DELETE` 指定触发器关联的操作类型。`table_name` 是触发器所在的表名。
可选的 `[FOR EACH ROW]` 表示触发器是针对每一行数据的,可以在触发器中引用 `NEW` 和 `OLD` 来指代插入、更新或删除的数据。
在 `BEGIN` 和 `END` 之间,编写触发器执行的逻辑代码。
请注意,上述语法是通用的,具体的语法细节可能会因数据库管理系统而有所不同。
sql语句创建触发器
创建触发器的SQL语句可以使用以下代码示例进行创建:
DELIMITER ||
CREATE TRIGGER triggerName AFTER/BEFORE insert ON tableName
FOR EACH ROW
BEGIN
ISNERT INTO tableName(column1,column2,...) VALUE(....);
END
DELIMITER ;
其中,triggerName是触发器的名称,tableName是触发器所属的表的名称。在BEGIN和END关键字之间,可以编写具体的触发器逻辑,包括插入语句等。请根据实际需求修改相应的表名、列名和逻辑。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [sql语句---触发器](https://blog.csdn.net/weixin_44239541/article/details/88650139)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [JSP+SQL基于WEB的开放性实验管理系统设计与实现(源代码+LW+开题报告+中英文献+答辩PPT).zip](https://download.csdn.net/download/scjrw/88260539)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文