2 yinjayhui123 yinjayhui123 于 2014.03.14 11:23 提问

mysql存储过程如何获取多个结果集

我想用mysql存储过程获取外键数据,然后通过out输出来。结果发现就能获取一条记录,不知道怎么去获取多条。麻烦各位帮忙看下。

存储过程代码:
CREATE PROCEDURE empCusState( in riqi date,out rname varchar(2000),out cname varchar(2000),out tname varchar(2000))
begin

declare sql_text varchar(5000);

set sql_text = concat('select t.t_Name , r.r_Name , c.c_Name into @sql_tname, @sql_rname,@sql_cname from
((roomcourse rc inner join teacher t on rc.t_Id=t.t_Id ) inner join room r on rc.r_Id=r.r_Id) inner join course c on rc.c_Id=c.c_Id where rc.rc_dates=\'',riqi,'\'');

set @sql_text = sql_text;

prepare stmt from @sql_text;

execute stmt;

set rname = @sql_rname;

set cname = @sql_cname;

set tname = @sql_tname;

end

执行代码:
call empCusState('2014-03-03',@a,@b,@c);
select @a,@b,@c;

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
php调用mysql存储过程返回多个结果集的处理
 返回一个结果全世界都知道怎么处理,关键是返回多个结果集就不好办了,下面有一解决办法   存储过程代码DELIMITER $$;DROP PROCEDURE IF EXISTS `test`.`sp_test`$$CREATE PROCEDURE `test`.`sp_test` ()BEGIN    select * from `user`.`user
Mysql存储过程(二)——多结果集返回与java获取
存储过程经常需要返回多个结果集。 Mysql 中直接用 select 即可返回结果集。而 oracle 则需要使用游标来返回结 果 集。这一点 Mysql 相对比较方便,如下代码即可实现输出两个结果集:          Sql code 2-1: [c-sharp] view plaincopy CREATE PROCEDURE test_proc_multi_select
Mysql存储过程——多结果集返回与java获取
存储过程经常需要返回多个结果集。 Mysql 中直接用 select 即可返回结果集。而 oracle 则需要使用游标来返回结 果 集。这一点 Mysql 相对比较方便,如下代码即可实现输出两个结果集:          Sql code 2-1: [c-sharp] view plain copy CREATE PROCEDURE test_proc_multi_selec
jdbc调用mysql存储过程,并获得结果集合
最近碰到一个需要Java调用mysql存储过程并获得存储过程结果集的场景. 存储过程:spilte_result:分割字符串存储到临时表,并返回临时表的结果 数据库执行结果 sum_interface_traffic_result:统计策略流量 现在使用JdbcTemplate进行调用存储过程并且获得结果 package com.cqs.demo.jdbc; imp
mysql使用存储过程返回多个值
可以使用OUT、INOUT参数类型让存储过程返回多个结果值,存储函数不能胜任,因为只能返回一个值。比如统计student数据表里男生和女生人数并通过它的参数返回这两个计数值,让调用者可以访问它们: delimiter $$ create procedure count_students_by_sex(out p_male int ,out p_female int) begin selec
python 调用mysql存储过程返回结果集
存储过程: delimiter | create procedure get_product_info(in imid int(10),int iuser varchar(20)) begin select * from tb_test where mid = imid and user = iuser; end; | delimiter ; python代码: impor
mysql简单存储过程创建并返回执行结果
创建存储过程,并返回执行结果
Mysql利用存储过程获取结果集
MySQL利用存储过程获取结果集 1、创建 begin      select * from yewu_hetong; end ps.....MySQL只能获取前10个结果集,如果有多余的,请自行用代码获取 2、获取 con = Mytest.getConn(); //获取连接 String sql = "{call test()}"; cs =
mysql 多日志表结果集合拼接存储过程
通常单天的日志 只记录当天的日志信息,如果需要查看一月内的日志信息需要对每天的日志表结果集合进行拼接,通常用到 union 。 储存过程: drop PROCEDURE if EXISTS unionSp; DELIMITER // create procedure unionSp(sTime varchar(32), eTime varchar(32),tchema varchar(32)
mysql 创建存储过程 返回结果集 调用存储过程
DELIMITER // CREATE PROCEDURE test_proc_multi_select()   BEGIN            SELECT * FROM testproc;            SELECT * FROM testproc WHERE id=1;   END;  ///////使用方式 con = MConnecti