Qual è il meccanismo per forzare MySQL a generare un errore all'interno della stored procedure?Come lanciare un errore nella procedura MySql?
Ho un procedimento che chiamano s un'altra funzione:
PREPARE my_cmd FROM @jobcommand;
EXECUTE my_cmd;
DEALLOCATE PREPARE my_cmd;
il comando lavoro è:
jobq.exec("Select 1;wfdlk# to simulatte an error");
poi:
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;
mio jobq. exec
ha sempre successo. C'è un modo per far salire un errore? Come implementare la funzione raise_mysql_error ??
BTW sto usando MySQL 5.5.8
grazie Arman.
correlati: http://stackoverflow.com/questions/465727/raise-error-within -mysql funzione –
anche leggere questo capitolo http://www.docstoc.com/docs/687360/Error-Handling-In-Stored-Procedure –