給下面的存儲過程:調用過程語法錯誤?
DELIMITER $$
DROP PROCEDURE IF EXISTS ric_forn$$
CREATE PROCEDURE ric_forn (IN nome_forn VARCHAR(100) , OUT msg VARCHAR(100))
BEGIN
DECLARE num_rec INT;
IF (nome_forn = '') THEN
SET msg = "Attenzione il nome inserito non è valido !";
END IF;
SELECT COUNT(*) INTO num_rec FROM Fornitori WHERE Des_Fornitore = nome_forn;
IF num_rec = 0 THEN
SET msg = "Nessun record trovato !";
ELSE
SELECT Id_Fornitore, Des_Fornitore, Ind_Fornitore FROM Fornitori WHERE Des_Fornitore = nome_forn;
SET msg = "Records trovati:";
END IF;
END$$
DELIMITER ;
如何運行呢?
我想:
call ric_forn (Des_Fornitore,msg);
call ric_forn (nome_forn ,msg);
call ric_forn ('' ,msg);
call ric_forn ('EAN srl' ,msg);
「EAN srl'is值
但我總是得到這樣的未知列nome_forn或nknown列錯誤Des_Fornitore..etc
你試過在變量周圍加引號嗎?比如'call ric_forn('test',msg);' – Snicksie
我試過,但無濟於事。我打了個電話ric_forn('Nuova Elettrica,味精);但我得到錯誤1414 – Roberto
如果我打電話ric_forn('Nuova Elettrica,@味精);它的工作完美,但我沒有得到任何消息... – Roberto