Trigger e Function mysql[RISOLTO]
Inviato: mercoledì 28 maggio 2014, 14:24
Buon pomeriggio, sono alle prime armi con i trigger e le funzioni. Quello che vorrei fare: Definire una trigger che assicuri la validità del seguente vincolo semantico: non ci possono essere più di 256 utenti. Ho scritto questo trigger e questa funciont:
Quando carico il trigger mi da il seguente errore:
Non riesco a capire bene dove sia l'errore, riuscite a darmi una mano per favore?
Grazie mille.
Buona Giornata
Codice: Seleziona tutto
CREATE FUNCTION NumUtenti() RETURNS INT
BEGIN
DECLARE conta INT;
SELECT COUNT(*) INTO conta FROM Utenti;
RETURN conta
END
CREATE TRIGGER MaxUsers
BEFORE INSERT ON Utenti FOR EACH ROW
BEGIN
IF(NumUtenti() >= 7)
THEN INSERT INTO Utenti VALUES (NULL,'pluto')
END IF;
END;Codice: Seleziona tutto
mysql> source trigger.sql;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 3
ERROR 1327 (42000): Undeclared variable: conta
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'RETURN conta
END
CREATE TRIGGER MaxUsers
BEFORE INSERT ON Utenti FOR EACH ROW
' at line 1
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'END' at line 1
Grazie mille.
Buona Giornata