2011-02-18 13 views
18

我正在嘗試使用mySQL創建存儲過程。此過程將驗證用戶名和密碼。我目前正在運行MySQL 5.0.32,因此應該可以創建過程。使用參數在mySql中創建過程

繼承人我已經使用的代碼。我得到的只是一個SQL語法錯誤。

GO 
    CREATE PROCEDURE checkUser 
    (IN @brugernavn varchar(64)),IN @password varchar(64)) 
    BEGIN 
    SELECT COUNT(*) FROM bruger WHERE [email protected] AND [email protected]; 
    END; 

預先感謝您

回答

40

我想通了現在。下面是正確的答案

CREATE PROCEDURE checkUser 
(
    brugernavn1 varchar(64), 
    password varchar(64) 
) 
BEGIN 
    SELECT COUNT(*) FROM bruger 
    WHERE bruger.brugernavn=brugernavn1 
    AND bruger.pass=password; 
END; 

@指向mysql中的全局變量。上面的語法是正確的。

+1

刪除我以前的帖子。忘記@指向mysql中的全局變量(我通常在Sql服務器中@指向一個正常參數)。如果你想檢查一個命令的語法,你可以隨時去[mysql參考手冊](http://dev.mysql.com/doc/refman/5.5/en/index.html)。對於CREATE PROCEDURE,這將是[本頁](http://dev.mysql.com/doc/refman/5.5/en/create-procedure.html)。 – 2011-02-18 09:28:01

5
(IN @brugernavn varchar(64)**)**,IN @password varchar(64)) 

的問題是)