• ADADADADAD

    MySQL调用存储过程和函数的示例分析[ mysql数据库 ]

    mysql数据库 时间:2024-11-29 09:49:39

    作者:文/会员上传

    简介:

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

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

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

    1、调用存储过程

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

    callsp_name([parameter[,...])

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

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

    定义存储过程:

    mysql>delimiter//mysql>createprocedureCountProcl(insidint,outnumint)->begin->selectcount(*)intonumfromfruitswheres_id=sid;->end//QueryOK,0rowsaffected(0.06sec)mysql>delimiter;

    调用存储过程:

    mysql>callCountProcl(101,@num);QueryOK,1rowaffected(0.08sec)

    查看返回结果:

    mysql>select@num;+------+|@num|+------+|3|+------+1rowinset(0.00sec)

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

    2、调用存储函数

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

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

    mysql>delimiter//mysql>createfunctionCountProc2(sidint)->returnsint->begin->return(selectcount(*)fromfruitswheres_id=sid);->end//QueryOK,0rowsaffected(0.06sec)mysql>delimiter;

    调用存储函数:

    mysql>delimiter;mysql>selectCountProc2(101);+-----------------+|CountProc2(101)|+-----------------+|3|+-----------------+1rowinset(0.05sec)

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

    MySQL调用存储过程和函数的示例分析.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysql存储函数