函数和存储过程
###函数
delimiter $
create function 函数名(形参1 类型1,形参2 类型2...) returns 返回类型 #-- 注意是retruns
begin
set @val=函数体; #-- 函数语句集,set @val 定义变量
return val;
end $
delimiter ;
select 函数名(参数); # 调用
###过程
delimiter $$
create procedure st(过程类型 参数1 参数类型1,...)
begin
select name,age from class_1;
select name,score from class_1 order by score desc;
end $$
delimiter ;
call st();
过程类型:in 可接收参数据 out可外传数据 inout 可接可外传
###删除
DROP PROCEDURE /FUNCTION [IF EXISTS] sp_name;
##事务
begin; 开启
commit;提交
rollback;回退
特点:
1.原子性 一个事务是完整整体,要么全部执行,要么全部不执行
2.一致性 数据库总是从一个一致性的状态转换到另一个一致性的状态
3.隔离性 一个事务没有提交前,其他事务不可见
4.永久性 提交之后,永久改变