• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Czym jest TIGGER w SQL?

Object Storage Arubacloud
0 głosów
572 wizyt
pytanie zadane 18 czerwca 2018 w SQL, bazy danych przez assassin Gaduła (3,260 p.)
Otóż tostałem takie oto pytanie:

 

Co to jest trigger?
a) Procedura uruchamiana, gdy wywoływane jest jedno z poleceń INSERT, UPDATE, DELETE
b) Procedura uruchamiana po rzuceniu wyjątku
c) Procedura uruchamiana podczas odczytywania rekordów z bazy (SELECT)
d) Procedura, która może być bezpośrednio wywołana z innej procedury SQL

 

Prosiłbym o podanie poprawnej odpowiedzi. I gdyby ktoś mógł wyjaśnić swoimi słowami o co chodzi w tych TIGGERach to byłbym naprawdę wdzięczny.

2 odpowiedzi

+1 głos
odpowiedź 18 czerwca 2018 przez Wiciorny Ekspert (272,310 p.)
edycja 19 czerwca 2018 przez Wiciorny

d) Procedura, która może być bezpośrednio wywołana z innej procedury SQL

z kolei pojawiła się tu odp A-  napisana przez kolege niżej, ona też jest poprawna, pytanie czy tylko jedna odp. ma byc poprawna? Jeśli nie to zarówno D I A  są poprawne, jak jedna: to tutaj skłonny jestem zmienić zdanie na odp A 

dlaczego ? BO mimo, że "d" jest też wykonywalna i poprawna, to słowo ' bezpośrednio ' trudno określić  od strony autora "co miał na myśli" 

Wyzwalacze (ang. trigger) to konkretna rekacja bazy danych na zdefiniowane wcześniej zdarzenie, związane z konkretną tabelą. Uruchamiają się automatycznie i można je wywołać tylko przez zdefiniowane zdarzenie.

NP. dodajesz trigera do bazy danych, który AUTOMATYCZNIE zapisze Ci "Czas tzw logger" kiedy jakiś użytkownik został dodany do bazy, tagiego trigera zapiusującego dodajesz bezpośrednio po WYKONANIU INSERTA DO bazy zeby tego nie robic :) ... ręcznie. W takiej sytuacji za kazdym razem kiedy poleci polecenie INSERTA DO bazy zostanie wykonane coś dodatkowego bez pisania z twojej strony ( tutaj bedzie to dodanie do bazy informacji o czasie np logowania ) 

1
komentarz 18 czerwca 2018 przez assassin Gaduła (3,260 p.)
Serdecznie dziękuję
0 głosów
odpowiedź 19 czerwca 2018 przez CjanciK Bywalec (2,970 p.)
Witam,

Nie chciałbym się sprzeczać ale czy triggerem nie będzie odpowiedź A) ?

Według mnie trigger to taka "procedura", która zostanie automatycznie uruchomiona po wywołaniu jednego z poleceń INSERT, UPDATE, DELETE na tabeli na której taki trigger jest założony.

Czyli przykładowo mamy tabelę Pracownicy i zostaje tam dodany nowy pracownik (polecenie INSERT), i wtedy jeżeli mamy założony trigger na to zdarzenie możemy automatycznie dodać takiego pracownika do tabeli np. OdbiorcyNewslettera, wywołując tylko INSERT na tabeli Pracownicy.

Jeżeli się mylę to poprawcie.

pzdr
komentarz 19 czerwca 2018 przez Wiciorny Ekspert (272,310 p.)
wiesz sprzeczałbym się bo ja tutaj widzę kilka poprawnych odpowiedzi, bo Odp. A nie jest błędna generalnie . Z tym, że odp. D też jest prawdiłowa tzn. nie jest błędna.
komentarz 19 czerwca 2018 przez CjanciK Bywalec (2,970 p.)
Z tym, że trigger nie jest chyba wywoływany bezpośrednio z procedury :P  Np. procedura robi insert na tabeli, wtedy to nie procedura wywołuje trigger lecz zdarzenie INSERT na tabeli. Tak mi się wydaje :D
komentarz 19 czerwca 2018 przez Wiciorny Ekspert (272,310 p.)
ale możesz umieścić wywołanie trigera po nazwie bezpośrednio przy bardziej zaawansowanym złączeniu np.
komentarz 19 czerwca 2018 przez CjanciK Bywalec (2,970 p.)
Podasz jakiś przykład ? :) Bo myślę, że jeżeli masz rację to tak czy inaczej i tak łamię to znaczenie słowa "bezpośrednio", ale to już chyba bardziej kwestia interpretacji. Mimo wszystko gdybyś pokazał przykład byłbym wdzięczny. Zawsze chętnie uczę sie nowych rzeczy ;)

Podobne pytania

+1 głos
3 odpowiedzi 651 wizyt
0 głosów
1 odpowiedź 267 wizyt
pytanie zadane 11 lipca 2023 w SQL, bazy danych przez W_potrzebie Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 302 wizyt
pytanie zadane 23 marca 2023 w SQL, bazy danych przez XDBX Użytkownik (640 p.)

92,684 zapytań

141,589 odpowiedzi

320,073 komentarzy

62,044 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...