mysql 存储过程练习1

mysql 存储过程练习使用:

     call  test_pro1()

DELIMITER $$
USE `test`$$
DROP PROCEDURE IF EXISTS `test_pro1`$$
CREATE DEFINER=`root`@`%` PROCEDURE `test_pro1`()
BEGIN
	/*变量的声明*/
	DECLARE	 username VARCHAR(40)  ; 
	DECLARE age INT ;
	DECLARE var INT ; 
	DECLARE down INT DEFAULT 0 ;
	DECLARE PERIOD_ID1 INT ;
	DECLARE tmp_chapter_id1 VARCHAR(40) ; 
	/*声明一个 游标,指向一个结果集*/
	DECLARE cur_program_period  CURSOR FOR  SELECT PERIOD_ID , tmp_chapter_id FROM program_period ; 
	/*循环游标结束时候 这个数值会变为1 ,游标结束标识*/
	DECLARE CONTINUE HANDLER FOR NOT FOUND SET down=1 ;
	
	SET age=7 ; 
	/*if语句以及逻辑运算符*/
	IF age  > 29 THEN 
	    SELECT '年龄大于29' ; 
	END IF; 
	SET username='wangzhantao';
	SELECT username ; 
	/*循环使用*/
	SET var=0;
	WHILE var <6 DO 
	    SET var = var +1 ; 
	END WHILE ;
	SELECT var ; 
	/*游标使用*/
	OPEN  cur_program_period;
	/*游标指向第一条*/
	FETCH cur_program_period INTO PERIOD_ID1 , tmp_chapter_id1 ; 
	/*打印变量 tmp_chapter_id1 */
	SELECT   tmp_chapter_id1; 
	/*循环游标使用*/
	WHILE down<>1  
	DO    
	     FETCH cur_program_period INTO PERIOD_ID1 , tmp_chapter_id1 ;  
	END WHILE ; 
	 CLOSE cur_program_period; 
END$$

DELIMITER ;

猜你喜欢

转载自username2.iteye.com/blog/2251907