主题
创建过程与函数
1. 存储过程(Stored Procedure)
存储过程是一组预编译的 SQL 语句集合,可以通过调用执行,实现复杂业务逻辑。
创建存储过程
sql
DELIMITER //
CREATE PROCEDURE AddUser(
IN p_name VARCHAR(50),
IN p_email VARCHAR(100)
)
BEGIN
INSERT INTO users (name, email) VALUES (p_name, p_email);
END //
DELIMITER ;
调用存储过程
sql
CALL AddUser('Alice', '[email protected]');
2. 函数(Function)
函数是返回单个值的存储程序,可在查询中调用。
创建函数
sql
DELIMITER //
CREATE FUNCTION GetUserCount()
RETURNS INT
DETERMINISTIC
BEGIN
DECLARE total INT;
SELECT COUNT(*) INTO total FROM users;
RETURN total;
END //
DELIMITER ;
使用函数
sql
SELECT GetUserCount();
3. 参数类型
- IN:输入参数,只读。
- OUT:输出参数,存储过程执行后返回。
- INOUT:输入输出参数,既传入又返回。
存储过程和函数可封装业务逻辑,提高数据库操作的效率和安全性。