您正在使用IPV4(34.230.9.187)访问本站 您本次共访问本站 1 次
 用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器 行情 简化版
文明驾车我带头,文明行路我带头,礼貌让座我带头      

【腾讯云】云产品限时秒杀,爆款1核2G云服务器,首年74元      
[公益] 节省一分零钱 献出一份爱心 温暖世间真情      
2022年 情人节 27
2022年 元宵节 28
2023年 元 旦 348
2022年 春 节 14
 
  • 本类新增
    本类热门文章
    您现在的位置:首页 >> 数据库 >> 内容
    mysql创建存储过程及函数详解
    内容摘要: 1.1.基本语法createprocedurename([params])UNSIGNED[characteristics]routine_bodyparams:in|out|inout指定参数列表代表输入与输出routine_body:SQL代码内容,以begin........endcharacteristics:指定存储过程特性,包含5种1DETERM......
    1.1.基本语法

    createprocedurename([params])

    UNSIGNED[characteristics]routine_body

    params:in|out|inout指定参数列表代表输入与输出

    routine_body:SQL代码内容,以begin........end

    characteristics:指定存储过程特性,包含5种

    1DETERMINISTIC不确定的

    2NOSQL没有SQl语句,当然也不会修改数据

    3READSSQLDATA只是读取数据,当然也不会修改数据

    4MODIFIESSQLDATA要修改数据

    5CONTAINSSQL包含了SQL语句

    1.2创建一个指定执行权限的存储过程

    createDEFINER=`root`@`%`procedurename([params])

    UNSIGNED[characteristics]routine_body

    DEFINER:指明谁有权力来执行。

    1.3DELIMITER的使用

    ”DELIMITER//“表示设置“//”符号为结束语,因为mysql中默认语句结束为分号‘;',为了避免存储过程与mysql语句符号冲突,所以有时使用DELIMITER来改变结束语符号,要配合end//来使用;

    示例:创建一个root账户执行的存储过程,输出给定字符串的长度

    DELIMITER//

    CREATEdefiner=`root`@`%`PROCEDURE`avgFruitPrice`(

    inf_stringVARCHAR(200)

    )

    BEGIN

    selectlength(f_string);

    END//

    2.创建函数

    函数的创建与存储过程相同

    示例

    DELIMITER//

    CREATEdefiner=`root`@`%`FUNCTION`my_length`(

    f_stringVARCHAR(200)

    )

    RETURNSINT(11)

    UNSIGNEDNOSQL

    BEGIN

    returnlength(f_string);

    END//

    注意:创建函数需要注意3个地方,

    1.RETURNS:需指定返回类型

    2.UNSIGNEDNOSQL需指定存储过程特性

    3.return:返回需要的数据

    遇见的错误:

    如报错如上信息就是没有指定存储过程特性。

    存储过程函数中可以通过mysql查询结果为其参数复制:其语句为select....into

    begin

    declareonenamechar(50)default‘0';

    declaretwonamechar(50);

    selectf_name,b_nameintoonename,twonamefromt_userwhereid=1;

    .......

    end//

    说明:

    declare:存储过程及函数内部定义变量

    default:默认值

    版权声明:本内容来源于网络,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
    上一篇:mysql修改data的存储位置 下一篇:MySQL查看当前数据库中的表
    发布日期:2021/12/3
    手机扫二维码直达本页
    发布时间:10:20:14
    点击:65
    录入:齐天大圣
    相关文章
    Baidu
    YiJiaCMS 6.1.0.10988 Build 21.12.28(MSSQL) 闽ICP备05000814号-1
    本空间由腾讯云(轻量应用服务器)提供,百度云加速提供加速防护

    Copyright©2000-2022