Ciao!
Le procedure di MySQL consentono di restituire un messaggio d'errore?
Mi spiego meglio esemplificando, data la seguente procedura:
Se la procedura entrasse nella clausola ELSE del costrutto condizionale, cioè se il valore della variabile NumeroPreferenze fosse maggiore o uguale a 3, vorrei che venisse restituito un errore (possibilmente standard MySQL) del tipo “impossibile inserire la tupla”. In pratica devo aggiungere un vincolo sulla tabella per sopperire al mancato supporto da parte di MySQL dell'istruzione CHECK di SQL.codice:DROP PROCEDURE InserisciPreferenza; DELIMITER // CREATE PROCEDURE InserisciPreferenza(IN Pizza SMALLINT, IN Utente VARCHAR(50)) BEGIN DECLARE NumeroPreferenze SMALLINT; SELECT COUNT(*) INTO NumeroPreferenze FROM ElencoPreferenze E WHERE E.Utente = Utente; IF NumeroPreferenze < 3 THEN INSERT INTO Preferenza VALUES (Pizza, Utente); ELSE … END IF; END; // DELIMITER ;
Grazie mille!

Rispondi quotando
