2013-02-11 31 views

回答

0

試試這個,

DELIMITER $$ 
CREATE PROCEDURE ProcName 
BEGIN 
IF assetTypeNo = 0 THEN 
    SELECT * 
    FROM ; 
ELSEIF assetTypeNo = 1 THEN 
    SELECT * 
    FROM magazines 
END; 
END $$ 
DELIMITER ; 
0

的語法是不正確的。試試這個腳本 -

BEGIN 

    CASE assetTypeNo 
    WHEN 0 THEN 
    SELECT * FROM books; 
    WHEN 1 THEN 
    SELECT * FROM magazines; 
    END CASE; 

END 
+0

接受正確的答案。 – Devart 2013-02-12 08:23:31

0

試試這個。這應該工作。

CREATE DEFINER = 'root'@'%' PROCEDURE `test_proc`(
     IN assetTypeNo INTEGER(11) 
    ) 
    NOT DETERMINISTIC 
    CONTAINS SQL 
    SQL SECURITY DEFINER 
    COMMENT '' 
BEGIN 

    CASE assetTypeNo 
     WHEN 0 THEN SELECT * FROM `books`; 
     WHEN 1 THEN SELECT * FROM `magazines` ; 
     ELSE 
     BEGIN 
     END; 
    END CASE; 

END; 
相關問題