mysql 存储过程游标(Cursor)实例
2011-07-20 11:38
555 查看
DELIMITER $ USE `newtest`$ DROP PROCEDURE IF EXISTS `p1`$ CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`() BEGIN DECLARE dn VARCHAR(20); DECLARE stopFlag INT; DECLARE v_fetch_status INT DEFAULT 1; -- 定义游标 DECLARE get_sql CURSOR FOR SELECT dept_name FROM testtable GROUP BY dept_name; -- 下面这一块一定得紧随游标定义,不然就会报错 DECLARE CONTINUE HANDLER FOR NOT FOUND BEGIN SET v_fetch_status = 0; END; SET @csql=CONCAT("create table if not exists test(dept_name varchar(20) NOT NULL)"); PREPARE stm FROM @csql; EXECUTE stm; -- 循环游标---------get_sql---------start-------------- OPEN get_sql; lab1:LOOP FETCH get_sql INTO dn ; BEGIN SET @csql=CONCAT("insert into test(dept_name) values('",dn,"')"); PREPARE stm FROM @csql; EXECUTE stm; END; IF v_fetch_status = 0 THEN LEAVE lab1; END IF; END LOOP lab1; CLOSE get_sql; -- 循环游标---------get_sql---------end-------------------------------------- SELECT * FROM test; END$ DELIMITER ;
相关文章推荐
- MYSQL存储过程中使用游标的实例
- mysql存储过程和游标使用实例
- MySql存储过程—7、游标(Cursor)
- Mysql存储过程中游标的用法实例
- mysql存储过程中使用游标的实例
- MySQL存储过程游标(cursor)示例
- Mysql存储过程中游标的用法实例
- mysql存储过程简单实例 变量赋值 游标遍历
- mysql的存储过程、游标 、事务实例详解
- cursor游标(Mysql 存储过程之结果集的循环操作)
- MySql存储过程—7、游标(Cursor)
- MYSQL存储过程循环CURSOR(游标)使用
- MySql存储过程—7、游标(Cursor)
- mysql 存储过程使用游标实例
- MySql存储过程 游标(Cursor)
- PHP调用MySQL存储过程实例
- MYSQL的存储过程入门游标
- MySQL存储过程实例——实现查询数据表,有则更新无则插入
- MySQL存储过程例子,包含事务,参数,嵌套调用,游标,循环等