2012-02-09 19 views
0

我已創建MySQL中以下存儲過程創建一個存儲過程...如何在mysql中

DELIMITER // 
CREATE PROCEDURE GetMember(IN in_memberID int) 
BEGIN 
    SELECT * 
    FROM Members 
    WHERE MemberID = in_memberID; 
END// 



$result = mysql_query("CALL GetMember(".$memberID.")") or die(mysql_error()); 
while ($row = mysql_fetch_array($result)) { 
    echo $row['Name'] . "</br>"; 
} 

但是,當我把它從PHP返回的成員表中的所有記錄,我在做什麼錯誤?

編輯: 當我打電話的phpmyadmin內查詢我得到這個錯誤

CALL GetMember(1); 

#1312 - PROCEDURE myDb.GetMember can't return a result set in the given context 
+0

也許改變在var中,以in_memberId以避免混淆? – ethrbunny 2012-02-09 21:22:31

+0

請提供php代碼 – 2012-02-09 21:24:35

+0

我同意@ethrbunny。我認爲它混淆了程序。 – seanbreeden 2012-02-09 21:26:32

回答

0
use Database_Name; 

DELIMETER $$ 

DROP PROCEDURE IF EXISTS Proc$$ 
CREATE PROCEDURE Proc() 
     BEGIN 
       DECLARE x INT; 
       SET x = 1; 
       WHILE x <= 110000 DO 
        INSERT INTO Table_Name (word, mean) VALUES ('a', 'a mean'); 
        SET x = x + 1; 
       END WHILE; 
     END$$ 

DELIMITER ;