MySQL调用存储过程和函数的示例分析
发布时间:2022-02-15 18:53:35 所属栏目:MySql教程 来源:互联网
导读:这篇文章主要介绍了MySQL调用存储过程和函数的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 存储过程和函数有多种调用方法。存储过程必须使用call语句调用,并且存储过程和
这篇文章主要介绍了MySQL调用存储过程和函数的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 存储过程和函数有多种调用方法。存储过程必须使用call语句调用,并且存储过程和数据库相关,如果要执行其他数据库中的存储过程,需要指定数据库名称。例如call dbname.procname。存储函数的调用与MySQL中预定义的函数的调用方式相同。 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) 可以看到,该例与上一个例子中返回的结果相同,虽然存储函数和存储过程的定义稍有不同,但可以实现相同的功能。 感谢你能够认真阅读完这篇文章,希望小编分享的“MySQL调用存储过程和函数的示例分析”这篇文章对大家有帮助。 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |