| Termin | Definicja |
|---|---|
| Usuwanie wyzwalacza | Usuwanie wyzwalacza poleceniem DROP TRIGGER wyłącza automatyczne wykonywanie powiązanej z nim logiki. Czym jest wyzwalacz w bazie danychWyzwalacz, nazywany także triggerem, jest obiektem bazy danych powiązanym z określoną tabelą albo innym obiektem obsługiwanym przez dany silnik. Jego zadaniem jest automatyczne uruchomienie zdefiniowanej logiki po wystąpieniu określonego zdarzenia, na przykład dodaniu rekordu, zmianie wartości lub usunięciu danych. Wyzwalacz może wykonywać instrukcje kontrolne, zapisywać informacje w tabeli historii, sprawdzać warunki biznesowe albo modyfikować dane w powiązanym obiekcie. Dokładny zakres zdarzeń i moment wykonania zależy od konkretnego systemu zarządzania bazą danych. Usunięcie wyzwalacza oznacza skasowanie jego definicji z katalogu systemowego bazy. Nie jest tożsamością z czasowym wyłączeniem działania obiektu. Po wykonaniu usunięcia wyzwalacz nie będzie już reagował na zdarzenia, ponieważ przestaje istnieć jako aktywny obiekt. Sama tabela oraz dane przechowywane w tabeli zwykle pozostają bez zmian, o ile instrukcja usuwająca wyzwalacz nie jest częścią szerszej operacji obejmującej również inne obiekty. Instrukcja DROP TRIGGER i jej działanieDo usuwania wyzwalaczy służy instrukcja Niektóre implementacje udostępniają wariant warunkowy, na przykład Skutki usunięcia oraz kontrola zależnościPo usunięciu wyzwalacza operacje na powiązanej tabeli przestają automatycznie uruchamiać kod zapisany w jego definicji. Może to zmienić sposób rejestrowania historii, walidacji danych, aktualizowania kolumn pomocniczych lub synchronizowania informacji z inną tabelą. Jeżeli aplikacja zakłada, że określona czynność wykonywana jest przez trigger, po jego usunięciu dane mogą nadal zapisywać się poprawnie na poziomie składni SQL, ale przestać spełniać wymagania logiczne aplikacji. Dlatego przed usunięciem należy sprawdzić kod procedur, zapytań, migracji i testów, które odwołują się do nazwy wyzwalacza albo zależą od jego efektów ubocznych. Do wykonania operacji potrzebne są uprawnienia administracyjne lub uprawnienia właściciela obiektu, zgodnie z regułami konkretnego systemu. Silnik może odmówić usunięcia, jeżeli użytkownik nie ma odpowiednich praw albo gdy operacja narusza ograniczenia dotyczące zależnych obiektów. Warto zachować kopię definicji przed zmianą, na przykład przez zapisanie treści triggera w repozytorium migracji lub dokumentacji technicznej. Przywrócenie obiektu wymaga później odtworzenia jego definicji, przypisania do właściwego obiektu oraz ponownego sprawdzenia uprawnień i zachowania aplikacji. Bezpieczna procedura diagnostycznaUsuwanie wyzwalacza powinno być poprzedzone identyfikacją przyczyny zmiany. Najpierw należy ustalić, czy problem wynika z błędnej logiki triggera, jego wielokrotnego uruchamiania, nieoczekiwanej modyfikacji danych, konfliktu z inną regułą, czy tylko z błędnej konfiguracji aplikacji. Następnie trzeba odczytać definicję obiektu z katalogu systemowego, sprawdzić zdarzenia, moment uruchomienia i instrukcje wykonywane przez trigger oraz porównać te informacje z logami i testami. Jeżeli celem jest wyłącznie czasowe zatrzymanie działania, właściwsze może być użycie mechanizmu wyłączenia dostępnego w danym silniku, zamiast trwałego usuwania obiektu. Przed wykonaniem |