2017-04-21 18 views
0

私はMySQLストアドプロシージャの新機能です。私はログインの検証を書いたが、うまくいかない。MySQLのストアドプロシージャの問題

CREATE PROCEDURE `Login_validation`(
IN `Username` VARCHAR(50), 
IN `password` VARCHAR(50)) 
    LANGUAGE SQL 
    NOT DETERMINISTIC 
    CONTAINS SQL 
    SQL SECURITY DEFINER 
    COMMENT '' 
    BEGIN 

     IF EXISTS(SELECT * FROM user_details where [email protected]) THEN 
      BEGIN 
        IF EXISTS(SELECT * FROM user_details where [email protected] and [email protected]) THEN 
         BEGIN 
          SELECT 'SUCCESS' STATUSDISCRTIPTION, '100' STATUSCODE; 
         END; 
        ELSE 
          BEGIN 
            SELECT 'USERNAME AND PASSWORD NOT MATCHING' STATUSDISCRTIPTION, '101' STATUSCODE; 
          END; 
        END IF; 
      END; 
     ELSE 
       BEGIN 
          SELECT 'USERNAME NOT EXISTS' STATUSDISCRTIPTION , '101' STATUSCODE; 
       END; 
     END IF; 
    END 

この私のストアドプロシージャは、私がSELECT STATUSDISCRTIPTION、 '101' からstatusCode 'をUSERNAMEはEXISTS、NOT' です。この出力のみ。ループが機能しない場合

call Login_validation('Malathi','123456') 

マラティの名前があります。何が問題ですか?

答えて

0

ユーザ変数の場合は@username、ストアドプロシージャのパラメータと混同しないでください。

使用where FIRSTNAME = Username

関連する問題