首页 > 解决方案 > 存储过程插入记录中的 MySQL 语法错误

问题描述

我正在尝试在 MySQL 中创建这个存储过程。但是,MySQL 不接受此过程并显示存在语法错误。有人可以解释我做错了什么吗?顺便说一句,我是编写存储过程的新手。

  DELIMITER $$
   CREATE definer=`root`@`localhost` PROCEDURE 'login_insert'
   ( IN uname     VARCHAR(20),
     IN paword    VARCHAR(20),
     OUT result    INT)
   BEGIN
       INSERT INTO db1.login_tab
          (           username,
                      pword,
           )
           VALUES
          (
                      uname,
                      paword,
           )
          IF @@ERROR = 0 
            SET @result = 0 
          ELSE SET @result = 5 
          RETURN @result 
   END$$ 
    DELIMITER ;

根据以下建议将其更改为以下内容也无济于事。我已经完全删除了return语句

         DELIMITER $$
              CREATE definer=`root`@`localhost` PROCEDURE 'login_insert'
                     ( IN uname     VARCHAR(20),
                      IN paword    VARCHAR(20),
                       OUT result    INT)
             BEGIN
                    INSERT INTO db1.login_tab
                            (           username,
                                         pword
                             )
                             VALUES
                             (
                                uname,
                                paword
                              )
                   END$$ 
                  DELIMITER ;

标签: mysqlstored-proceduressyntax

解决方案


推荐阅读