asp.net网站连接mysql,室内装修设计图效果图,免费服务器推荐,电商网站运营策划1.存储过程 #x1f4d6;什么是存储过程#xff1f; 存储过程和函数是事先经过编译并存储在数据库中的一段sql语句集合#xff0c;调用存储过程函数可以简 化应用开发人员的很多工作#xff0c;减少数据在数据库和应用服务器之间的传输#xff0c;对于提高数据处理的 效率… 1.存储过程 什么是存储过程 存储过程和函数是事先经过编译并存储在数据库中的一段sql语句集合调用存储过程函数可以简 化应用开发人员的很多工作减少数据在数据库和应用服务器之间的传输对于提高数据处理的 效率是有好处的。 存储过程和函数的区别 1. 函数必须有返回值而存储过程没有。 2. 存储过程的参数可以是IN、OUT、INOUT类型函数的参数只能是IN 优点 存储过程只在创建时进行编译而SQL语句每执行一次就编译一次所以使用存储过程可以 提高数据库执行速度 简化复杂操作结合事务一起封装 复用性好 安全性高可指定存储过程的使用权 注意并发量少的情况下很少使用存储过程。并发量高的情况下为了提高效率用存储过程 比较多 存储过程练习
1、创建一个存储过程avg_sal_a有2个参数分别是部门名称dept_name及接收平均工资其中部门名称测试参数为上海中心接收平均薪资变量为a。
mysql select avg(salary) from employee where department_NO in (select number from department where name 上海中心);--查询sql
-------------
| avg(salary) |
-------------
| 2800.000000 |
-------------
1 row in set (0.00 sec)
mysql \d $--改结束符
--创建存储过程
mysql create procedure avg_sal_a(in dept_name varchar(255),out avg_dept int)- begin- select avg(salary) into avg_dept from employee where department_NO in (select number from department where name dept_name);- end$
Query OK, 0 rows affected (0.00 sec)
mysql \d ;--改回结束符
mysql call avg_sal_a(上海中心,a);--使用存储过程
Query OK, 1 row affected (0.00 sec)
mysql select a;--查看参数
------
| a |
------
| 2800 |
------
1 row in set (0.00 sec)
2.创建存储过程给定参数员工姓名查询该员工名所在部门的最高薪资并返回给变量a;
mysql select max(salary) from employee group by department_NO having department_NO (select department_NO from employee where name
吴所为);--查询语句
-------------
| max(salary) |
-------------
| 2800.00 |
-------------
1 row in set (0.00 sec)
mysql \d $--改结束符
--创建存储过程
mysql create procedure max_sal_e(in e_name varchar(255),out max_sal int)- begin- select max(salary) into max_sal from employee group by department_NO having department_NO (select department_NO from employee where name e_name);- end
Query OK, 0 rows affected (0.00 sec)
mysql \d ;--改回结束符
mysql call max_sal_e(吴所为,a);--使用存储过程
Query OK, 1 row affected (0.00 sec)
mysql select a;--查看
------
| a |
------
| 2800 |
------
1 row in set (0.00 sec)