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

请问一个MYSQL的存储过程和游标的有关问题

2012-04-27 
请教一个MYSQL的存储过程和游标的问题有这样一个场景有一个表test下面三个字段id name scorceabcdeftgk我

请教一个MYSQL的存储过程和游标的问题
有这样一个场景
有一个表test
下面三个字段
id name scorce
a b c
d e f
t g k
我现在要把 name的值逐个取出,放到存储过程的一个变量里。然后执行一个update的操作。
请问如何写这个存储和游标?

[解决办法]
不清楚你的需求是什么, 至于存储过程和游标,你可以直接参考手册中的例子。

引用
CREATE PROCEDURE curdemo()
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE a CHAR(16);
DECLARE b,c INT;
DECLARE cur1 CURSOR FOR SELECT id,data FROM test.t1;
DECLARE cur2 CURSOR FOR SELECT i FROM test.t2;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;

OPEN cur1;
OPEN cur2;

REPEAT
FETCH cur1 INTO a, b;
FETCH cur2 INTO c;
IF NOT done THEN
IF b < c THEN
INSERT INTO test.t3 VALUES (a,b);
ELSE
INSERT INTO test.t3 VALUES (a,c);
END IF;
END IF;
UNTIL done END REPEAT;

CLOSE cur1;
CLOSE cur2;
END


[解决办法]
引用放到存储过程的一个变量里。然后执行一个update的操作。

热点排行