- 30
- 0
- CPU
- Q6600
- Scheda Madre
- ASUS Maximus Formula
- HDD
- 2 x WD Caviar SE16 500GB Raid 0
- RAM
- 2x Corsair xms2 pc2-8500
- GPU
- ATi Sapphire Radeon HD 3870 512mb
- Audio
- integrato
- Monitor
- ASUS LS201
- PSU
- ENERMAX Liberty 500 Watt
- Case
- Cooler Master Stacker 831
- OS
- Windows Vista x64
ciao a tutti, premetto che sono un novellino dei DBMS e sto cercando di imparare, ho cercato di creare una semplice funzione di questo tipo:
per poi creare un trigger che la utilizzasse
l'idea molto semplice è che per ogni nuovo inserimento se il valore dell'attributo durata è maggiore di 90 settalo a 90...eppure io continuo a inserire tutti i valori che voglio e questi restano tali..non dovrebbero essere automaticamente messi a 90?
grazie
Codice:
CREATE FUNCTION checkdurata() RETURNS trigger AS '
BEGIN
if NEW.durata > 90 THEN
NEW.durata := 90;
END IF;
RETURN NEW;
END;
' LANGUAGE 'plpgsql';
per poi creare un trigger che la utilizzasse
Codice:
CREATE TRIGGER conta AFTER INSERT OR UPDATE ON trasmette
FOR EACH ROW EXECUTE PROCEDURE checkdurata();
l'idea molto semplice è che per ogni nuovo inserimento se il valore dell'attributo durata è maggiore di 90 settalo a 90...eppure io continuo a inserire tutti i valori che voglio e questi restano tali..non dovrebbero essere automaticamente messi a 90?
grazie