Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2010
    Messaggi
    15

    problemi con trigger PL/SQL

    ciao raga..mi sto esercitando e..mi sono accorta di avere un po' di problemi con i trigger ma non
    riesco a trovare un sito o un libro che riesca ad aiutarmi nel mio problema.
    Devo creare un trigger che applichi uno sconto del 10% solo se il prezzo è superiore a 100euro.
    La tabella è questa:
    [CODE]
    create table film
    (
    titolo varchar(30) primary key,
    prezzo decimal(4,2) not null
    )
    [CODE]

    il trigger che ho creato è questo e so cke il problema è con ":new". Mi aiutate??

    codice:
    CREATE OR REPLACE TRIGGER CHECKPREZZO
    		AFTER INSERT OR UPDATE OF PREZZO ON COPIAFILM
    		FOR EACH ROW
    	DECLARE
    		NO_SCONTO EXCEPTION;
    	BEGIN
    		SELECT VALUES INTO PREZZO
    		FROM COPIAFILM;
    		IF:NEW.PREZZO >= 100 THEN
    		:NEW.PREZZO := (:NEW.PREZZO - :NEW.PREZZO*10/100);
    		ELSE
    		RAISE NO_SCONTO;
    		END IF;
    	EXCEPTION
    		WHEN NO_SCONTO THEN
    		RAISE_APPLICATION_ERROR (-20990, 'Nessuno sconto applicabile');
    		END;

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2011
    Messaggi
    119
    Se vuoi applicare il trigger devi inserire o modificare un record.
    quindi se vuoi vedere il risultato devi fare la tua select dopo
    se vuoi la select e la variazione puoi usare una stored procedure che restituisce un set di dati dopo averli aggiornati.
    In genere ci si accontenta di calcolare il tutto in run time con una semplice select.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.