以一个最简单的查询语句的存储过程为例:

mysql 版:

********不带参数版********

create PROCEDURE queryStaffProc()  ----注意此处,就算是没有参数,也要加(),如果有参数输入或者输出,就写在()中

BEGIN

select * from tb_staff ;

END

call queryStaffProc;   ---注意此处,调用要用call

**********带输入参数版*************

create PROCEDURE queryStaffProc(IN p_StaffNo VARCHAR(20))---括号中可以传入多个参数

BEGIN

select * from tb_staff where StaffNo=p_StaffNo ;

END

call queryStaffProc (‘admin’);  ---传入参数

**********带输出参数版*************

create PROCEDURE queryStaffProc(IN p_StaffNo VARCHAR(20),out p_StaffName VARCHAR(20)) --注意输入参数是in,输出参数是out

BEGIN

select StaffName into p_StaffName from tb_staff where StaffNo=p_StaffNo ; ---将要输出的内容赋值给输出参数

END

call queryStaffProc ('admin',@staffName);  --传入两个参数

select @staffName  ---获取值

Sql server 版:

*******不带参数版********

create PROCEDURE queryStaffProc  --注意此处,不带(),如果需要定义参数,在下方定义

AS

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐