zoukankan      html  css  js  c++  java
  • mysql 存储过程需要DELIMITER

    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才会将";"当做存储过程中的代码,不会执行这些代码,用完了之后要把分隔符还原。

  • 相关阅读:
    Path文件操作实例
    Cache缓存对象缓存对象
    Session对象实例
    移动端适配问题
    webpack4 优化性能
    webpack源码分析
    wepack源码解析1
    webpack面试题
    asnyc await
    node 知识
  • 原文地址:https://www.cnblogs.com/yako/p/4612878.html
Copyright © 2011-2022 走看看