mysql存储过程的创建

mysql存储过程的创建

ID:14707057

大小:56.50 KB

页数:23页

时间:2018-07-30

mysql存储过程的创建_第1页
mysql存储过程的创建_第2页
mysql存储过程的创建_第3页
mysql存储过程的创建_第4页
mysql存储过程的创建_第5页
资源描述:

《mysql存储过程的创建》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MySQL存储过程的创建MySQL存储过程的创建(1).格式MySQL存储过程创建的格式:CREATEPROCEDURE过程名([过程参数[,...]])[特性...]过程体这里先举个例子:mysql>DELIMITER//mysql>CREATEPROCEDUREproc1(OUTsint)->BEGIN->SELECTCOUNT(*)INTOsFROMuser;->END->//mysql>DELIMITER;注:(1)这里需要注意的是DELIMITER//和DELIMITER;两句,DELIMITER是分割符的意思,因为MySQL默认以";"为分

2、隔符,如果我们没有声明分割符,那么编译器会把存储过程当成SQL语句进行处理,则存储过程的编译过程会报错,所以要事先用DELIMITER关键字申明当前段分隔符,这样MySQL才会将";"当做存储过程中的代码,不会执行这些代码,用完了之后要把分隔符还原。(2)存储过程根据需要可能会有输入、输出、输入输出参数,这里有一个输出参数s,类型是int型,如果有多个参数用","分割开。(3)过程体的开始与结束使用BEGIN与END进行标识。这样,我们的一个MySQL存储过程就完成了,是不是很容易呢?看不懂也没关系,接下来,我们详细的讲解。(2).声明分割符其实,关于

3、声明分割符,上面的注解已经写得很清楚,不需要多说,只是稍微要注意一点的是:如果是用MySQL的Administrator管理工具时,可以直接创建,不再需要声明。(3).参数MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT,形式如:CREATEPROCEDURE([[IN

4、OUT

5、INOUT]参数名数据类形...])IN输入参数:表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值OUT输出参数:该值可在存储过程内部被改变,并可返回INOUT输入输出参数:调用时指定,并且可被改变和返

6、回Ⅰ.IN参数例子创建:mysql>DELIMITER//mysql>CREATEPROCEDUREdemo_in_parameter(INp_inint)->BEGIN->SELECTp_in;->SETp_in=2;->SELECTp_in;->END;->//mysql>DELIMITER;执行结果:mysql>SET@p_in=1;mysql>CALLdemo_in_parameter(@p_in);+------+

7、p_in

8、+------+

9、1

10、+------++------+

11、p_in

12、+------+

13、2

14、+------+mysql>S

15、ELECT@p_in;+-------+

16、@p_in

17、+-------+

18、1

19、+-------+以上可以看出,p_in虽然在存储过程中被修改,但并不影响@p_id的值Ⅱ.OUT参数例子创建:mysql>DELIMITER//mysql>CREATEPROCEDUREdemo_out_parameter(OUTp_outint)->BEGIN->SELECTp_out;->SETp_out=2;->SELECTp_out;->END;->//mysql>DELIMITER;执行结果:mysql>SET@p_out=1;mysql>CALLsp_demo_

20、out_parameter(@p_out);+-------+

21、p_out

22、+-------+

23、NULL

24、+-------++-------+

25、p_out

26、+-------+

27、2

28、+-------+mysql>SELECT@p_out;+-------+

29、p_out

30、+-------+

31、2

32、+-------+Ⅲ.INOUT参数例子创建:mysql>DELIMITER//mysql>CREATEPROCEDUREdemo_inout_parameter(INOUTp_inoutint)->BEGIN->SELECTp_inout;->SETp_inout

33、=2;->SELECTp_inout;->END;->//mysql>DELIMITER;执行结果:mysql>SET@p_inout=1;mysql>CALLdemo_inout_parameter(@p_inout);+---------+

34、p_inout

35、+---------+

36、1

37、+---------++---------+

38、p_inout

39、+---------+

40、2

41、+---------+mysql>SELECT@p_inout;+----------+

42、@p_inout

43、+----------+

44、2

45、+----------+(4).变量Ⅰ.

46、变量定义DECLAREvariable_name[,variable_name...]data

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。