首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

存储过程 不用临时表,也不用OUT参数,怎么返回结果集

2012-06-01 
存储过程 不用临时表,也不用OUT参数,如何返回结果集这是一个测试例子SQL codeDROP PROCEDURE IF EXISTS Pr

存储过程 不用临时表,也不用OUT参数,如何返回结果集

这是一个测试例子

SQL code
DROP PROCEDURE IF EXISTS Pro_test;CREATE PROCEDURE Pro_test()   BEGIN      DECLARE ret       REAL;      DECLARE no_more_departments INT;      DECLARE cursor_name CURSOR      FOR      SELECT a FROM tbl_mytest;      DECLARE CONTINUE HANDLER FOR NOT FOUND SET no_more_departments=1;      DROP TABLE IF EXISTS tbl_temp;      CREATE TEMPORARY TABLE IF NOT EXISTS tbl_temp      (           `tmp_ret` REAL ,      ) ;      SET no_more_departments = 0;      OPEN cursor_name;      REPEAT         FETCH cursor_name INTO ret;            SET ret = ret*PI*100/180;            INSERT INTO tbl_temp  VALUES (ret);      UNTIL no_more_departments      END REPEAT;      CLOSE cursor_name;      SELECT tmp_ret  FROM tbl_temp ORDER BY tmp_ret;   END;


[解决办法]
MYSQL目前版本无此功能。

你可以通过在存储过程中执行SELECT语句返回结果集给应用程序。但无法返回给其它存储过程使用。
[解决办法]
function 可以实现你的功能,和procedure 差不多。
[解决办法]
存储过程实现不了具体的功能。
考虑一下函数。
[解决办法]
MYSQL目前不支持返回结果集,只能用表保存,再访问表

热点排行