Allora per Luca200 beh la chiamo con la SELECT davanti:
Non fare caso ai parametri la funzione che ho postato è incompleta, ci sono più controlli da fare e più parametri di ingresso da valutare, l'ho postata parzialmente proprio per fare più in fretta, ed essendo poi alle prime armi con le funzione e procedure su MySQL ho preferito fare un passo per volta!codice:SELECT addProdotto(2,-1,"Test");
Per r1cky: Quindi dovrei secondo te provare con una procedura anziché una funzione?
Solo una cosa, vedo che hai definito delle HANDLER per le varie eccezioni sollevata al cui interno viene fatto un CALL di una procedure, ERROR_IS_HAPPENED(), tale procedura dovrebbe servire per segnalare l'errore giusto? Alla fine potrei semplicemente settare al variabile di OUT ad uno specifico errore, dipendente dal tipo di eccezione, e quindi avere un ritorno in tempo reale dello stato dell'esecuzione. Giusto?
Un ultima considerazione, certo che è strana questa cosa che nelle procedure si può usare la TRANSACTION mentre nelle function e nei trigger no...
Provo un po a fare come suggerito da r1cky e vi aggiorno!
Saluti, Carlo.

Rispondi quotando