1.1存储过程、函数介绍
- 存储过程和函数区别:存储过程没有返回值,而函数必须有;存储过程的参数可以使用IN,OUT,INOUT类型,而函数的参数只能是IN类型。
- 存储过程特点
- 能完成较复杂的判断和运算,而且处理逻辑都封装在数据库端,调用者不需要自己处理业务逻辑,一旦逻辑发生变化,只需要修改存储过程即可,而对调用者程序完全没有影响。
- 可编程性强,灵活
- SQL编程的代码可重复使用
- 执行速度相对快一些
- 减少网络之间数据传输,节省开销
1.2创建存储过程
- -- 创建存储过程
DELIMITER $$
CREATE PROCEDURE testa()
BEGIN
SELECT * FROM student WHERE id=2;
END $$
-- 调用存储过程
call testa();
1.3存储过程/函数的查、删
- 查
-- 查看存储过程或者函数的状态
SHOW PROCEDURE STATUS LIKE 'testa';
-- 查看存储过程或者函数的定义
SHOW CREATE PROCEDURE testa
- 删
-- 删除存储过程
DROP PROCEDURE testa1;
-- 删除函数
DROP FUNCTION testa1;
1.4存储过程的变量
- 需求: 编写存储过程,使用变量取id=2的用户名;变量my_uname
DELIMITER $$
CREATE PROCEDURE testa3()
BEGIN
-- 1.变量的声明使用declare,一句declare只声明一个变量,变量必须先声明后使用
-- 2.变量具有数据类型和长度,与mysql的SQL数据类型保持一致,因此甚至还能指定默认值、字符集和排序规则等
DECLARE my_uname VARCHAR(32) DEFAULT '';
-- 3.变量可以通过set来赋值,也可以通过select into的方式赋值
SET my_uname='itheima';
SELECT NAME INTO my_uname FROM student WHER
mysql 存储过程、函数
最新推荐文章于 2022-12-31 10:25:18 发布