1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 详解MySQL调用存储过程和函数(案例)

详解MySQL调用存储过程和函数(案例)

时间:2020-11-01 21:44:47

相关推荐

详解MySQL调用存储过程和函数(案例)

数据库|mysql教程

mysql,存储函数

数据库-mysql教程

asp 项目管理系统源码,vscode view,ubuntu 软raid,tomcat osx,vant接sqlite,php服务器部署,仪表插件,框架与前端开发,stata 爬虫,php与dw,英文seo优化平台,织梦个人博客网站源码,网页左右移动,摄影师个人网站模板,ecshop添加商品页面,电脑维修管理系统 php,dede仿蘑菇街整站程序(带采集)lzw

存储过程和函数有多种调用方法。存储过程必须使用call语句调用,并且存储过程和数据库相关,如果要执行其他数据库中的存储过程,需要指定数据库名称。例如call dbname.procname。存储函数的调用与MySQL中预定义的函数的调用方式相同。

mysql数据库源码,ubuntu更改时区,微服务跟tomcat区别,什么爬虫违法,php编程题补考,高邑一站式seo服务诚信经营lzw

(免费学习推荐:mysql视频教学)

哪个免费的网站源码好用,ubuntu生存手册便签,为什么建站要使用tomcat,徐仁国爬虫,php数组键值初始化,seo 编辑工具lzw

1、调用存储过程

存储过程是通过call 语句进行调用的,语法如下:

call sp_name([parameter[,...])

call语句调用一个先前用create procedure创建的存储过程,其中sp_name为存储过程名称,parameter为存储过程的参数。

【例1】定义名为CountProcl的存储过程,然后调用这个存储过程。

定义存储过程:

mysql> delimiter //mysql> create procedure CountProcl(in sid int ,out num int) -> begin -> select count(*) into num from fruits where s_id = sid; -> end //Query OK, 0 rows affected (0.06 sec)mysql> delimiter ;

调用存储过程:

mysql> call CountProcl (101,@num);Query OK, 1 row affected (0.08 sec)

查看返回结果:

mysql> select @num;+------+| @num |+------+| 3 |+------+1 row in set (0.00 sec)

该存储过程返回了指定s_id=101的水果商提供的水果种类,返回值存储在num变量中,使用select查看,返回结果为3。

2、调用存储函数

在MySQL中,存储函数的使用方法与MySQL内部函数的使用方法是一样的。即用户自定义的存储函数与MySQL内部函数是一个性质的。

【例2】定义存储函数CountProc2,然后调用这个函数,代码如下:

mysql> delimiter //mysql> create function CountProc2 (sid int) -> returns int -> begin -> return (select count(*) from fruits where s_id = sid); -> end//Query OK, 0 rows affected (0.06 sec)mysql> delimiter ;

调用存储函数:

mysql> delimiter ;mysql> select CountProc2(101);+-----------------+| CountProc2(101) |+-----------------+|3 |+-----------------+1 row in set (0.05 sec)

可以看到,该例与上一个例子中返回的结果相同,虽然存储函数和存储过程的定义稍有不同,但可以实现相同的功能。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。