码迷,mamicode.com
首页 > 数据库 > 详细

mysql 存储过程需要DELIMITER

时间:2015-07-01 13:44:07      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:

DELIMITER &&
CREATE PROCEDURE syncAdvertiser()
  BEGIN
    DECLARE id bigint;
    DECLARE _cur CURSOR FOR SELECT id from advertisers;
    OPEN _cur;
      REPEAT
        FETCH _cur INTO id;
        SQL
      UNTIL 1>0 END REPEAT;
    CLOSE _cur;
  END;
DELIMITER ;

 

需要注意的是DELIMITER &&DELIMITER ;两句,DELIMITER是分割符的意思,因为MySQL默认以";"为分隔符,如果我们没有声明分割符,那么编译器会把存储过程当成SQL语句进行处理,则存储过程的编译过程会报错,所以要事先用DELIMITER关键字申明当前段分隔符,这样MySQL才会将";"当做存储过程中的代码,不会执行这些代码,用完了之后要把分隔符还原。

mysql 存储过程需要DELIMITER

标签:

原文地址:http://www.cnblogs.com/yako/p/4612878.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!