使用游标的形式
从student表中, 遍历出所有信息, 并将其 导入 student2表中。
CREATE PROCEDURE procedure_tEST ()
BEGIN
// 定义游标结束条件
DECLARE
done INT DEFAULT FALSE;
DECLARE
out_id INT;
DECLARE
out_name VARCHAR (255);
DECLARE
out_address VARCHAR (1000);
//定义游标.
DECLARE
test_cursor CURSOR FOR SELECT
_id,
NAME,
address
FROM
student;
// 定义,当找不到下一列数据时, done 为ture。
DECLARE
CONTINUE HANDLER FOR NOT FOUND
SET done = TRUE;
OPEN test_cursor;
// 打开
read_loop :LOOP
//开始遍历
FETCH next
FROM
test_cursor INTO out_id,
out_name,
out_address;
IF done THEN
LEAVE read_loop;
END
IF;
// 这里执行逻辑处理
INSERT INTO student2 (_id, NAME, address)
VALUES
(
out_id,
out_name,
out_address
);
END
LOOP
;
CLOSE test_cursor;
END