2012-03-17 39 views
10

我試圖創建一個程序,它將輸入數據,然後在OUT參數中返回一條消息,但是我收到了這條消息「 .alextest10是不是在BEFORE觸發」mysql「不是變量或NEW僞變量」消息

我有這個作爲我的過程變量或新的僞變量:

create procedure alextest10 
(IN a_patid CHAR(3), IN a_patnam VARCHAR(12), IN a_consno CHAR(3), IN a_ward CHAR(2), 
OUT a_message VARCHAR(50)) 
BEGIN 
set a_message = 'Database updated'; 
INSERT INTO patient (patient_id, patient_name, consultant_no, ward_no) 
values (a_patid, a_patnam, a_consno, a_ward); 
end! 

,這是我的電話命令:

call alextest10 ('p99', 'Madeuppy', '999', 'w9', a_message)! 

你能幫忙?

非常感謝!

回答

14
CALL alextest10 ('p99', 'Madeuppy', '999', 'w9', @a_message); 
SELECT @a_message; 
+0

這樣可以擺脫錯誤消息,但它不會顯示消息,只是添加數據。有任何想法嗎? – alexei7 2012-03-17 19:11:31

+1

只是'SELECT @a_message;' – nnichols 2012-03-17 20:17:24

+0

輝煌:)我認爲該功能做了別的。非常感謝你 – alexei7 2012-03-17 22:13:33