代码之家  ›  专栏  ›  技术社区  ›  Dan

MySQL5.0存储过程语法

  •  0
  • Dan  · 技术社区  · 15 年前

    我只是在尝试创建我的第一个MySQL存储过程,并尝试直接从文档中复制一些示例,但它不起作用:

    mysql> delimiter //
    mysql> CREATE PROCEDURE ghost.test (OUT param1 INT) INSERT into admins SELECT COUNT(*) FROM bans; END//
    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '; END' at line 1
    

    这里有什么交易?这几乎等同于:

    mysql> delimiter //
    
    mysql> CREATE PROCEDURE simpleproc (OUT param1 INT)
        -> BEGIN
        ->   SELECT COUNT(*) INTO param1 FROM t;
        -> END//
    Query OK, 0 rows affected (0.00 sec)
    

    http://dev.mysql.com/doc/refman/5.1/en/create-procedure.html

    1 回复  |  直到 7 年前
        1
  •  6
  •   Andomar    15 年前

    看来你错过了 BEGIN .