MYSQL中如何创建存储过程和存储函数(上篇)

本文详细介绍了MySQL中创建存储过程和存储函数的方法。存储过程使用createprocedure语句,存储函数则使用createfunction语句。创建存储过程时可以定义in、out、inout参数,而存储函数仅支持in参数。文中通过示例展示了如何创建无参数和带参数的存储过程及存储函数,并强调了调用存储过程时只能通过输出变量返回值。

        存储程序分为存储过程和存储函数。在MySQL中创建存储过程和存储函数的语句分别是create procedure 和create function。使用call语句来调用存储过程,只能用输出变量返回值。

        1.创建存储过程。

        需要用到create procedure,其基本语法如下:

        create procedure 存储过程名称(参数列表)存储过程特性 存储体;

        参数列表为:【in|out|inout 参数名称 参数类型】。in为输入参数,out为输出参数,inout两者都有。

        存储特性为指定存储过程中的特性。

        存储体就是写的具体的SQL。

        其中参数列表和存储过程特性为可选项。

# 比如此存储过程就是一个名为sumPrice的存储过程,begin和end用来限定存储体。
create procedure sumPrice()
begin
select sum(price) from books;
end;
# 例如使用参数的存储过程,将其命名为countTotal,将计算的数目给参数ct。
create procedure countTotal(out ct int)
begin 
select count(*) into ct from books;
end

        2.创建存储函数。

        创建存储函数需要用到create function语句。

        create function func_name(参数列表)returns type 指定存储特性 存储体。

        其中参数列表如存储过程一样,returns type是返回类型,指定存储特性也是可选项。

# 定义一个nameString无参存储函数,其返回类型为字符类型。
create function nameString()
returns char(100)
return(select name from class);

        需要注意的是:指定参数in,out,inout只能对于存储过程,而对于存储函数来说,只能是默认的in。

        以上就是最简单的存储过程和存储函数的创建过程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值