संग्रहीत प्रक्रिया में त्रुटि को फेंकने के लिए MySQL को मजबूर करने के लिए तंत्र क्या है?MySQL प्रक्रिया में कोई त्रुटि कैसे फेंकें?
PREPARE my_cmd FROM @jobcommand;
EXECUTE my_cmd;
DEALLOCATE PREPARE my_cmd;
काम आदेश है:
jobq.exec("Select 1;wfdlk# to simulatte an error");
तो:
CREATE PROCEDURE jobq.`exec`(jobID VARCHAR(128),cmd TEXT)
BEGIN
DECLARE result INT DEFAULT 0;
SELECT sys_exec(CONCAT('echo ',cmd,' | base64 -d > ', '/tmp/jobq.',jobID,'.sh ; bash /tmp/jobq.',jobID,'.sh &> /tmp/jobq.',jobID)) INTO result;
IF result>0 THEN
# call raise_mysql_error(result);
END IF;
END;
मेरे jobq
मैं एक प्रक्रिया है जो एक और फ़ंक्शन को कॉल करते हैं। exec
हमेशा सफल रहा है। क्या कोई त्रुटि उत्पन्न करने का कोई तरीका है? raise_mysql_error फ़ंक्शन को कैसे कार्यान्वित करें ??
BTW मैं MySQL 5.5.8
धन्यवाद अरमान उपयोग कर रहा हूँ।
संबंधित: http://stackoverflow.com/questions/465727/raise-error-within -mysql-function –
इस अध्याय को भी पढ़ें http://www.docstoc.com/docs/687360/Error- हैंडलिंग- इन- स्टोर- प्रसंस्करण –