• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

MySQL中创建存储过程

MySql 海叔叔 4周前 (05-30) 5次浏览 已收录 0个评论

关键词
MySQL 存储过程

摘要

本文介绍MySQL中创建存储过程的操作、相关的SQL语句,以及相关的注意事项。

本文介绍MySQL中创建存储过程的操作、相关的SQL语句,以及相关的注意事项。

MySQL创建存储过程的基本语法

CREATE PROCEDURE <存储过程名> (参数列表)
BEGIN
SQL语句代码块
END

注意事项

1、MySQL创建存储过程的SQL语句是一个代码段,在使用代码段时,一定要先声明代码的定界符。

为什么会这样呢?因为默认情况下,MySQL把分号(;)作为定界符,遇到分号时,MySQL就认为一段语句结束了,可以执行了。但存储过程中本身还会遇到SQL语句后面带的分号,所以MySQL就会执行失败。

举个例子看一下:
create procdure myproc()
begin
select count(1) from tb_users;
end
如果就这样放进去执行,MySQL会在“tb_users;”处将存储过程的代码截断,然后先执行,然后你知道的,这部分代码怎么执行啊,执行不了的,它不是一个完整的创建存储过程的代码段。

怎么解决呢?可以使用delimiter命令来指定一个代码段的定界符,比如“//”。程序改一下:

delimiter //
create procdure myproc()
begin
select count(1) from tb_users;
end
//

这样,代码就可以说正确的执行了,存储过程就创建起来了。

2、存储过程的参数列表

参数的指定形式为:
[in|out|inout] <参数名> <参数类型> [,[in|out|inout] <参数名> <参数类型>]…
看上来这个不一定看得懂,这是我按照cmd命令的命令格式语法写的。还是来看看例子吧:

delimiter //
create procdure myproc(in username varchar(20), in age int)
begin
insert into tb_users(u_name, u_age) values(username, age);
end
//

好了,关于MySQL存储过程的创建就介绍这么多,谢谢!


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址