|NO.Z.00068|——————————|BigDataEnd|——|Java&MySQL索引/存储过程/触发器.V09|——|MySQL.v09|存储过程创建方式3|

一、存储过程创建方式3
### --- 变量赋值

SET @变量名=值
### --- OUT 输出参数:表示存储过程向调用者传出值

OUT 变量名 数据类型
### --- 创建存储过程
——>        需求: 向订单表 插入一条数据, 返回1,表示插入成功

~~~     # 创建存储过程 接收参数插入数据, 并返回受影响的行数
DELIMITER $$
CREATE PROCEDURE orders_proc(IN o_oid INT , IN o_gid INT ,IN o_price INT, OUT
out_num INT)
BEGIN
    -- 执行插入操作
    INSERT INTO orders VALUES(o_oid,o_gid,o_price);
    -- 设置 num的值为 1
    SET @out_num = 1;
    -- 返回 out_num的值
    SELECT @out_num;
END $$
### --- 调用存储过程

~~~     # 调用存储过程插入数据,获取返回值
CALL orders_proc(1,2,30,@out_num);
二、sql语句
### --- sql语句

/*
    存储过程创建方式3 获取存储过程的返回值
    
    1.变量的赋值
        SET @变量名 = 值
    2.OUT 输出参数
        OUT 变量名 数据类型
*/
-- 向订单表 插入一条数据, 返回1,表示插入成功
DELIMITER $$
CREATE PROCEDURE orders_proc(IN o_oid INT,IN o_gid INT ,IN o_price INT,OUT out_num INT)
BEGIN 
    -- 执行插入操作
    INSERT INTO orders VALUES(o_oid,o_gid,o_price);
    -- 设置 out_num 值为1
    SET @out_num = 1;
    
    -- 返回 out_num
    SELECT @out_num;
END $$
-- 调用存储过程 获取返回值
CALL orders_proc(1,2,50,@out_num);

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on   yanqi_vip  阅读(24)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示