1 CREATE PROCEDURE `存儲過程名` () 2 BEGIN 3 -- 需要定義接收游標數據的變量 4 DECLARE a CHAR(16); 5 6 -- 遍歷數據結束標志 7 DECLARE done INT DEFAULT FALSE; 8 -- 游標 9 DECLARE 游標名1 CURSOR FOR 需要建立游標的語句(select id from xx); 10 -- 將結束標志綁定到游標 11 DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; 12 -- 打開游標 13 OPEN 游標名1; 14 15 -- 開始循環 16 read_loop: LOOP 17 -- 提取游標里的數據,這里只有一個,多個的話也一樣; 18 FETCH 游標名1 INTO a; 19 -- 聲明結束的時候 20 IF done THEN 21 LEAVE read_loop; 22 END IF; 23 -- 這里做你想做的循環的事件 24 25 INSERT INTO test.t VALUES (a); 26 27 END LOOP; 28 -- 關閉游標 29 CLOSE 游標名1; 30 31 END