Liipaisimen poistaminen käytöstä Oraclessa

Liipaisimen Poistaminen Kaytosta Oraclessa



Tietokantakäynnistimet tai lyhyesti triggerit viittaavat tallennettuihin proseduureihin, jotka suoritetaan vastauksena tietyn tietokantaobjektin tapahtumatoimintaan.

Tämä eroaa tavallisista tallennetuista toimenpiteistä, jotka vaativat nimenomaisen kutsun käyttäjältä. Koska liipaisimet ovat automatisoituja, ne käynnistyvät tai käynnistyvät, kun määritetty tapahtuma tapahtuu riippumatta yhdistetyn käyttäjän tai palvelimen tilasta.







Useimmat relaatiotietokannat tukevat laukaisimien käyttöä automatisoitujen tehtävien suorittamiseen, kuten virheellisten tapahtumien estämiseen, tapahtumien kirjaamiseen, taulukoiden käyttötilastojen hakemiseen ja tallentamiseen ja muihin.



Kun triggeri on luotu, se suoritetaan aina, kun siihen liittyvä tapahtuma tapahtuu. Voit kuitenkin haluta väliaikaisesti tai pysyvästi estää liipaisimen suorittamisen. Tässä tulee käyttöön liipaisimen estotoiminto.



Tässä viestissä käsitellään nopeita ja helppoja vaiheita liipaisimen poistamiseksi käytöstä Oracle-tietokannassa. Jos olet uusi Oracle-laukaisimien käyttäjä ja haluat tietää, kuinka voit luoda sellaisen, tarkista seuraava linkki:





https://linuxhint.com/oracle-create-trigger

Testilaukaisimen luominen

Ennen kuin keskustelemme liipaisimen käytöstä poistamisen menetelmistä, määritetään esimerkkilaukaisin esittelytarkoituksiin.



HUOMAUTUS : Tämä osio ei käsittele tietokannan laukaisimien määrittelyä tai käyttöä.

Haluamme luoda triggerin, joka kirjaa käyttäjän toiminnan poistotoiminnon jälkeen. Oletetaan esimerkiksi, että meillä on sample_data -taulukko, jossa on seuraavat tiedot:

Meidän on ensin luotava taulukko, johon tallennamme jokaisen poistotoiminnon lokit.

Taulukkokaavio on seuraava:

luo taulukko sample_data_logs(
henkilötunnus,
etunimi varchar2(50),
ip_address varchar2(20),
btc_address varchar2(50),
credit_card varchar2(50),
tunniste varchar2(40),
delete_date päivämäärä,
deleted_by varchar2(20)
);

Seuraavaksi meidän on määritettävä liipaisin, joka suoritetaan poistotapahtuman jälkeen. Liipaisimen määritelmä annetaan seuraavasti:

luo tai korvaa laukaisu log_user
poistamisen jälkeen
kohdassa sample_data
jokaiselle riville
julistaa
toiminnan_käyttäjänimi varchar2(20);
alkaa
valitse käyttäjä kohtaan action_username dualista;
lisää kohtaan sample_data_logs
arvot (:OLD.id,
:OLD.first_name,
:OLD.ip_address,
:OLD.btc_address,
:OLD.credit_card,
:OLD.identifier,
sysdate,
action_username);
loppu;

Testaaksemme triggerin, anna meidän suorittaa poistotoiminto sample_data-taulukosta kuvan mukaisesti:

poista näytetiedot, jossa id = 1;

Lopuksi voimme tarkistaa lokitaulukosta, että poistotoiminto on tallennettu:

valitse * sample_data_logsista;

Lähtö:

Kuten näemme, taulukossa on merkintä aiemmista tiedoista ennen poistamista sekä poistotoiminnon suorittanut käyttäjätunnus ja poiston ajankohta.

Seuraavissa osissa osoitamme, kuinka edellinen laukaisin poistetaan käytöstä. Ennen kuin teet niin, varmista, että kohdelaukaisimesi toimii ja että sinulla on riittävät oikeudet ottaa se käyttöön tai poistaa sen käytöstä.

Poista triggeri käytöstä PL/SQL:llä

Ensimmäinen ja yksinkertaisin tapa poistaa liipaisin käytöstä on SQL-käskyn käyttö. Onneksi Oracle tarjoaa meille ALTER TRIGGER -käskyn, jonka syntaksi on seuraava:

ALTER TRIGGER trigger_name POIS;

Esimerkiksi aiemmin luomamme log_user-laukaisimen poistamiseksi käytöstä voimme suorittaa seuraavan:

alter trigger log_user disable;

Kun liipaisin on suoritettu, se ei enää säilytä kopiota vanhoista tiedoista ja poiston suorittaneesta käyttäjästä seuraavassa kuvatulla tavalla:

poista näytetiedot, jossa id = 2;

Tarkista lokit:

valitse * sample_data_logsista;

Lähtö:

Kuten näemme, meillä on edelleen vain yksi ennätys.

Poista triggeri käytöstä SQL Developerin avulla

Voimme käyttää SQL Developer -apuohjelmaa liipaisimen poistamiseen käytöstä graafisessa käyttöliittymässä. Aloita kirjautumalla sisään SQL Developeriin.

Siirry 'Triggerit'-osioon:

Laajenna triggerit-hakemistoa ja etsi liipaisin, jonka haluat poistaa käytöstä. Napsauta triggerin nimeä hiiren kakkospainikkeella ja valitse 'Poista käytöstä'.

Vahvista 'Poista käytöstä' -toiminto ja napsauta 'Käytä'.

Kun Oracle on poistettu käytöstä, se näyttää liipaisimen harmaan, mikä osoittaa, että se ei ole aktiivinen.

Johtopäätös

Tässä artikkelissa tutkittiin, kuinka Oraclen liipaisin poistetaan käytöstä PL/SQL-lauseiden ja SQL Developer -apuohjelman avulla.