> 数据库 > MySQL >

mysql存储过程 --游标的使用 取每行记录 (多字段)

delimiter $

create PROCEDURE phoneDeal()

BEGIN

    DECLARE  id varchar(64);   -- id

    DECLARE  phone1  varchar(16); -- phone

    DECLARE  password1  varchar(32); -- 密码

    DECLARE  name1 varchar(64);   -- id

    -- 遍历数据结束标志

    DECLARE done INT DEFAULT FALSE;

    -- 游标

    DECLARE cur_account CURSOR FOR select phone,password,name from account_temp;

    -- 将结束标志绑定到游标

    DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;

   

    -- 打开游标

    OPEN  cur_account;     

    -- 遍历

    read_loop: LOOP

            -- 取值 取多个字段

            FETCH  NEXT from cur_account INTO phone1,password1,name1;

            IF done THEN

                LEAVE read_loop;

             END IF;

 

        -- 你自己想做的操作

        insert into account(id,phone,password,name) value(UUID(),phone1,password1,CONCAT(name1,'的家长'));

    END LOOP;

 

 

    CLOSE cur_account;

END $


 

(责任编辑:IT)