2010-11-30 9 views
1

を作成し、私の機能は、私はエラーを取得するここでは、関数MySQLエラー

DELIMITER // 
CREATE FUNCTION specialUser(user INT) RETURNS user_id INT 
BEGIN 
    DECLARE user_id INT DEFAULT 0; 
    CASE 
    WHEN user = 1556 THEN SET user_id = 1001; 
    WHEN user = 1018 THEN SET user_id = 1002; 
    WHEN user = 3658 THEN SET user_id = 1003; 
     ELSE SET user_id = user; 
    END CASE; 
RETURN user_id; 
END// 

です:

あなたのSQL構文でエラーが発生しています。あなたのMySQLサーバのバージョンに対応するマニュアルをチェックして、正しい構文が近くの 'user_id INT'を使用するようにしてください。 BEGIN DECLARE user_id INT DEFAULT 0;あなたは結果だけの種類を述べることができるライン1

答えて

3

で CASE 'は識別子を与えるには使用することはそう、ありません。

CREATE FUNCTION specialUser(user INT) RETURNS INT 

代わりの

CREATE FUNCTION specialUser(user INT) RETURNS user_id INT 
関連する問題