Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [sqlserver] creare un trigger che esegue una procedura prima di una query, si può?

    premetto che non ho trovato nulla dalla documentazione in riguardo e questo mi fa presumere che non sia possibile, ma tentar non nuoce..
    esiste la possibilità di creare un trigger su una tabella che agisca prima che venga lanciata una query di selezione su quest'ultima?
    xxx

  2. #2
    Penso si possa fare, o almeno ti parlo per quella che è la mia esperienza su ORACLE.
    I trigger in Oracle sono subordinati ad eventi di tipo 'before'.

    ES in Oracle:

    codice:
    CREATE OR REPLACE TRIGGER set_id_ad_funzione
    BEFORE INSERT 
    ON ad_funzione
    REFERENCING NEW AS NEW OLD AS OLD
    FOR EACH ROW
    declare
        new_id  number;
    Begin
        select seq_funzione.nextval into new_id from dual;
        :NEW.id:=new_id;
    End;
    Spero ti possa essere di aiuto.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  3. #3
    ti ringrazio, sapevo anch'io dell'esistenza di un trigger before in oracle, ma non ho trovato nulla a riguardo per ss.. before non è neppure una parola riservata (o almeno non ancora)

    inoltre non so se è possibile intercettare l'evento select ma ne dubito
    xxx

  4. #4
    i trigger si attivano solo per istruzioni INSERT, UPDATE o DELETE, quindi mi sa che non si può fare.
    comunque in ss si utilizza INSTEAD OF per eseguire il trigger prima dell'sql
    EX Mentecatto - succube della Honda
    Le mie foto|HONDA CLUB ITALIA!|DARTH LEGNANZ!

  5. #5
    Si, ma Ale infatti parlava di eseguire un trigger prima di una query, quindi la query è a parte (almeno così ho capito).
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  6. #6
    Originariamente inviato da lufo5
    i trigger si attivano solo per istruzioni INSERT, UPDATE o DELETE, quindi mi sa che non si può fare.
    comunque in ss si utilizza INSTEAD OF per eseguire il trigger prima dell'sql
    che è vero, non avevo pensato a quest'utilizzo dell'instead of
    resta il fatto però che anch'io sapevo che si possono attivare solo su insert/update/delete
    xxx

  7. #7
    Originariamente inviato da maximum
    Si, ma Ale infatti parlava di eseguire un trigger prima di una query, quindi la query è a parte (almeno così ho capito).
    si, ma il trigger è attivato (o meno) a seconda del tipo di query, e mi sa che la select non rientra tra questi
    xxx

  8. #8
    Originariamente inviato da Alethesnake
    si, ma il trigger è attivato (o meno) a seconda del tipo di query, e mi sa che la select non rientra tra questi
    eatto. I trigger si attivano solo nella alterazione di dati in una tabella, quindi la select non è contemplata.
    EX Mentecatto - succube della Honda
    Le mie foto|HONDA CLUB ITALIA!|DARTH LEGNANZ!

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 © 2026 vBulletin Solutions, Inc. All rights reserved.