MySQL基础作业五

embedded/2024/9/24 14:38:03/

 1、建立触发器,订单表中增加订单数量后,商品表商品数量同步减少对应的商品订单出数量,并测试

mysql> create trigger orders_after_insert_trigger after insert on orders for each row-> update goods set num=num-new.onum-> where gid=new.gid;
Query OK, 0 rows affected (0.01 sec)

2、建立触发器,实现功能:客户取消订单,恢复商品表对应商品的数量

mysql> create trigger orders_after_delete_trigger-> after delete on orders for each row-> update goods set num=num+old.onum-> where gid=old.gid;

3、建立触发器,实现功能:客户修改订单,商品表对应商品数量同步更新

mysql> create trigger orders_after_update_trigger-> after update on orders for each row-> update goods set num=num+(old.onum-new.onum)-> where gid=new.gid;

使用mydb7 openlab库

4、创建提取emp_new表所有员工姓名和工资的存储过程s1

mysql> delimiter //
mysql> create procedure s1()-> begin->      select name,incoming from emp_new;-> end //
Query OK, 0 rows affected (0.01 sec)mysql> delimiter ;
mysql> call s1();
+------+----------+
| name | incoming |
+------+----------+
| 张三 |     4000 |
| 李四 |     3500 |
| 王五 |     2000 |
| 赵六 |     7500 |
| 荣七 |     8500 |
| 牛八 |     7300 |
+------+----------+

5、创建存储过程s2,实现输入员工姓名后返回员工的年龄

mysql> create procedure s2(in in_name varchar(11),out out_age int)-> begin->     select age into out_age from emp_new where name=in_name;-> end //
Query OK, 0 rows affected (0.01 sec)
mysql> delimiter ;
mysql> call s2('张三',@age);
Query OK, 1 row affected (0.00 sec)mysql> select @age;
+------+
| @age |
+------+
|   35 |
+------+

6、创建一个存储过程s3,有2个参数,传入部门号,返回该部门的平均工资

mysql> create procedure s3(in in_dept int,out avg_sal float)-> begin->      select avg(incoming) into avg_sal from emp_new where dept2=in_dept;-> end //
Query OK, 0 rows affected (0.01 sec)mysql> delimiter ;
mysql> call s3(101,@avg_sal);
Query OK, 1 row affected (0.00 sec)mysql> select @avg_sal;
+----------------+
| @avg_sal       |
+----------------+
| 3166.669921875 |
+----------------+
1 row in set (0.00 sec)


http://www.ppmy.cn/embedded/112557.html

相关文章

Neo4j入门案例:三星堆

创建一个关于三星堆的知识图谱可以是一个非常有趣的项目,它可以帮助理解如何使用Neo4j来存储和查询复杂的关系数据。三星堆文化以其独特的青铜器、金器和其他文物而闻名,这为我们提供了一个丰富的历史背景来构建知识图谱。 数据模型定义 实体类型&#…

三十七、Gin完成登陆功能

目录 一、完成dao 二、services包下新建login.go 三、路由绑定 一、完成dao 这个方法意思是通过这个userid查询数据 func (a *AccountDao) Fist(UserID string) (*model.Account, error) {var account model.Accounterr : a.db.Where("user_id ?", UserID).Fir…

flink 常见的缩减状态的方式

在 Apache Flink 中,缩减状态(state reduction)是指在流处理任务中,通过一定的方式减少或优化状态的存储和管理,降低内存消耗或加快计算速度。以下是 Flink 中常见的缩减状态的方式: 1. 时间窗口(Windowing&#xff0…

解决跨境电商平台账号无法访问的常见问题

跨境电商的迅猛发展,越来越多的卖家选择在全球各大电商平台如亚马逊、eBay等进行商品销售。然而,在实际运营过程中,卖家经常会遇到账号无法访问、应用打不开等问题,导致业务受阻。本文将针对这些问题进行详细分析,并提…

VMamba: Visual State Space Model 论文总结

题目:VMamba: Visual State Space Model(视觉状态空间模型) 论文:[2401.10166] VMamba: Visual State Space Model (arxiv.org) 源码:https://arxiv.org/pdf/2401.10166 (github.com) 目录 一、摘要 二、引言 三、方…

C sharp 学习 笔记

介绍 这篇文章是我学习C#语言的笔记 学的是哔哩哔哩刘铁锰老师2014年的课程 在学习C#之前已经学习过C语言了。看的是哔哩哔哩比特鹏哥的课程。他们讲的都很不错 正在更新, 大家可以在我的gitee仓库中下载笔记源文件、项目资料等 笔记源文件可以在Notion中导入…

C++设计模式

设计模式 设计模式分类 1)根据目的分为三类: 创建型,结构型和行为型; 创建型模式主要用于创建对象。结构型模式主要用于处理类或对象的组合。行为型模式主要用于描述对类或对象怎样交互和怎样分配职责。 2)根据范围…

敲击键盘到屏幕上打印字符计算机都做了什么

当你在 Linux 系统上按下键盘的 x 键并看到屏幕上打印出字母 x 时,Linux 系统内部发生了很多过事情,涉及硬件、操作系统内核和用户空间的多个层次。下面是一个大致的流程: 1. 硬件层 键盘硬件捕获按键:当你按下 x 键&#xff0c…