MySQL'in saklı yordamda hata atmasını zorlayan mekanizma nedir?MySql prosedüründe nasıl hata atılır?
PREPARE my_cmd FROM @jobcommand;
EXECUTE my_cmd;
DEALLOCATE PREPARE my_cmd;
iş komut: o zaman
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;
Benim jobq
ben s a başka işlevi çağırmak bir prosedür var. exec
her zaman başarılı olur. Bir hatayı artırma yolu var mı? raise_mysql_error işlevi nasıl oluşturulur ?? BTW MySQL 'i 5.5.8
sayesinde Arman kullanıyorum
.
ilgili: http://stackoverflow.com/questions/465727/raise-error-within -mysql-işlevi –
da bu bölümü okuyunuz http://www.docstoc.com/docs/687360/Error-Handling-In-Stored-Prosedür –