mysql第一句写什么_MySQL学习笔记-4

2.2 存储过程相关语法

#创建存储过程

delimiter $ #指定分隔标识符为 $

create procedure 存储过程名([参数类型 参数名 数据类型,...])

#参数类型可以分为:IN,OUT,INOUT

begin

#存储过程体:

#一组合法的SQL语句,每条SQL语句结尾必须添加分号

end $

#如果存储过程体只有一句话,begin,end 可以省略。

#调用存储过程

call 存储过程名(参数类型 参数名 数据类型) $

select @def_name $ #@def_names是存储过程参数列表中标识为out或inout类型的参数

delimiter ; #回复分隔符为常规使用的分号

#删除存储过程

drop procedure [if exists ]pro_name;

#查看存储过程的定义信息

show create procedure pro_name;

#查看当前数据库中的存储过程信息

show procedure status [like 'pattern'|where expr];

关于delimiter(手册13.1.17 P2241)

The example uses the mysql client delimiter command to change the statement delimiter from ; to // while the procedure is being defined. This enables the ; delimiter used in the procedure body to be passed through to the server rather than being interpreted by mysql itself.

​ delimiter 命令仅用于指定当前mysql客户端识别一条语句的标识,当指定 $ 为客户端的分隔标识后,存储过程体中的';'仍然会被服务器端所识别,因为服务器端仍然以分号作为一条sql语句的标识。分号与其他具体的存储过程体是作为一个整体直接传送到服务器端的,不会在客户端进行解析。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值