2013-06-19 57 views
2

我嘗試編寫一個存儲過程,該過程在表中查找用戶並返回給他。 但是程序總是返回整個表格。SELECT過程中的MySQL過程返回整個表

DELIMITER // 
DROP PROCEDURE IF EXISTS `login` 
CREATE PROCEDURE `login`(IN login VARCHAR(20), IN password VARCHAR(32)) 
BEGIN 
SELECT * FROM `users` WHERE `login` = login AND `password` = password; 
END 
// 
DELIMITER ; 

怎麼了?

回答

2

嘗試改變參數

DROP PROCEDURE IF EXISTS `login`; 
CREATE PROCEDURE `login`(IN alogin VARCHAR(20), IN apassword VARCHAR(32)) 
SELECT * FROM `users` WHERE `login` = alogin AND `password` = apassword; 

答的名字,因爲它是一個語句SP dith BEGIN...END塊,無需改變DELIMITER

+1

真棒,謝謝 – Anton