Jak wyświetlić wyzwalacze w SQL Server Management Studio

przez: Daniel Farina | Zaktualizowano: 2019-04-03 | Komentarze | powiązane: więcej > wyzwalacze

Problem

SQL Server ma wiele typów wyzwalaczy, które można utworzyć, ale znalezienie ich usingsql Server Management Studio (SSMS) może nie być łatwe, jeśli nie jesteś pewien, gdzie żeby spojrzeć. W tej wskazówce przyjrzymy się, jak używać SSMS do znajdowania i zarządzania wyzwalaczami dmltriggers i DDL.

rozwiązanie

SQL Server Management Studio to graficzny interfejs, który pozwala użytkownikowi konfigurować, zarządzać, a także edytować skrypty. Chociaż GUI jest łatwy w użyciu, musimy uświadomić sobie, że wiedza o tym, gdzie znaleźć obiekty, nie zawsze jest taka łatwa i jest to prawdą w przypadku wyzwalaczy, ponieważ istnieją różne typy wyzwalaczy i nie wszystkie znajdują się w tym samym miejscu wssms.

wyzwalacze w SQL Server Management Studio

można utworzyć dwa typy wyzwalaczy:

  • wyzwalacze DML (Data Manipulation Language)i
  • Wyzwalacze DDL (Data Definition Language).

wyzwalacze DML to te, które są uruchamiane, gdy SQLstatement próbuje zmienić dane danej tabeli lub widoku. Mogą one być tworzone na tabelach i widokach.

z drugiej strony, DDL uruchamia się, gdy instrukcja SQL próbuje zmienić fizyczną strukturę bazy danych (tzn. utworzyć, zmienić lub usunąć obiekty bazy danych).Dodatkowo, istnieją Wyzwalacze DDL, które uruchamiają się, gdy są zmiany w obiektach serverobjects (tj. tworzenie, zmiana lub upuszczanie połączonych serwerów lub baz danych).

w następnych sekcjach pokażę Ci, jak uzyskać dostęp do każdego typu wyzwalacza withinSSMS.

Table Scoped SQL Server wyzwalacze DML

jeśli potrzebujemy zobaczyć wyzwalacze w określonej tabeli, możemy użyć SSMS w następujący sposób. Najpierw rozwiń bazy danych, a następnie rozwiń bazę danych, która zawiera tabelę. Następnie rozwiń folder tabele i znajdź tabelę, której szukasz. rozwiń tabelę i rozwiń wyzwalacze, aby zobaczyć listę wyzwalaczy dla tabeli, jak pokazano poniżej.

to są kroki, aby znaleźć wyzwalacze z zakresu tabeli w SSMS.

teraz, gdy znaleźliśmy WYZWALACZ, kliknij prawym przyciskiem myszy na wyzwalaczu, aby zobaczyć menu rzeczy, które możesz zrobić z SSMS. Jeśli klikniesz na WYZWALACZ skryptów, jak widać różne skrypty, które można utworzyć z SSMS, jak pokazano poniżej.

menu kontekstowe wyzwalaczy zakresów tabeli.

to menu kontekstowe daje możliwość modyfikowania, skryptowania, wyświetlania zależności,włączania lub wyłączania oraz usuwania wyzwalacza. Element Modyfikuj otwiera nowe okno skryptu w edytorze SSMS z kodem źródłowym wyzwalacza skryptem ALTER TRIGGERstatement.

View Scoped SQL Server wyzwalacze DML

dodatkowo można użyć SSMS do przeglądania wyzwalaczy, które są skalowane do widoków.Wykonaj te same czynności, co w przypadku wyzwalacza z zakresem tabeli, ale zamiast rozszerzać folder tabela rozwiń folder widoki. Thenext Screen capture pokazuje te kroki w kolejności.

oto kroki, aby znaleźć wyzwalacze widoku z zakresami w SSMS.

Ponadto, jeśli klikniesz prawym przyciskiem myszy na wyzwalaczu, zobaczysz menu podobne do tabel zakresów wyzwalacza.

 menu kontekstowe wyzwalaczy widoków.

SQL Server Database Scoped Wyzwalacze DDL

jeśli chcesz wyświetlić te wyzwalacze, przejdź do folderu programowalność w bazie danych i poszukaj podfolderu o nazwie wyzwalacze bazy danych, jak pokazano poniżej.

oto kroki, aby znaleźć wyzwalacze z zakresami bazy danych w SSMS.

na następnym zrzut ekranu zauważysz, że jeśli klikniesz prawym przyciskiem myszy na bazie danych, menu kontekstowe nieco różni się od menu wyzwalaczy table i viewscoped. Nie ma elementu Modify, ale nadal mamy szansę zapisać WYZWALACZ jako drop i utworzyć instrukcje. Ponadto, podobnie jak w tabeli andview scoped triggers, mamy opcje wyświetlania zależności wyzwalacza, włączania lub wyłączania i usuwania wyzwalacza.

menu kontekstowe wyzwalaczy scoped bazy danych.

Server Scoped SQL Server Wyzwalacze DDL

w przypadku, gdy chcemy zobaczyć Wyzwalacze DDL, które wpływają na cały serwer, musimy spojrzeć na folder obiektów serwera w widoku drzewa serwera. Zobaczysz gałąź dziecka. Rozwiń folder wyzwalacze, aby zobaczyć listę wyzwalaczy DDL o zasięgu serwera.

oto kroki, aby znaleźć wyzwalacze z zakresem serwera w SSMS.

kiedy klikniemy prawym przyciskiem myszy nazwę wyzwalacza, zobaczymy menu z tymi samymi elementami, co wyzwalacze z zakresu bazy danych.

menu kontekstowe wyzwalaczy scoped serwera.
kolejne kroki
  • ta wskazówka została napisana przy użyciu SQL Server Management Studio v17.9.Jeśli nadal używasz starszej wersji SSMS, sugeruję przeczytanie poniższego podpowiedzi, aby sprawdzić, czy warto aktualizowaćnowe funkcje w SQL ServerManagement Studio V17. Dodatkowo spójrz na to Tipsql Server Management Studio 17.X ważne funkcje.
  • jeśli nie masz zainstalowanego SSMS, zapoznaj się z tą wskazówką, aby dowiedzieć się, jak zainstalować SQL Server Management Studio na komputerze lokalnym.
  • jeśli znasz nazwę wyzwalacza, możesz użyć funkcji wyszukiwania obiektów SSMS.Możesz dowiedzieć się więcej o tym tutaj używając szczegółów Eksploratora obiektów i funkcji wyszukiwania obiektów SSMS 2008.
  • jeśli nie znasz nazwy wyzwalacza, możesz użyć skryptów z tej wskazówki:Znajdź wszystkie wyzwalacze SQL Server, aby szybko włączyć lub wyłączyć.
  • jeśli potrzebujesz skryptów wyzwalających dla dowolnej bazy danych, możesz przyjrzeć się następującym wyzwalaczom tipScript z dowolnej bazy danych w SQL Server.
  • stay tuned totheSQL Server Triggers tips category for more tips and tricks using triggers.
  • aby uzyskać więcej porad związanych z SSMS, możesz przejrzeć kategorię porady QL Server Management Studio.

Pobierz Skrypty

przycisk Next tip

O autorze
MSSQLTips autor Daniel Farina Daniel Farina urodził się w Buenos Aires w Argentynie. Sam wykształcony, od dzieciństwa wykazywał zamiłowanie do nauki.
Zobacz wszystkie moje porady

artykuł Ostatnia aktualizacja: 2019-04-03

Leave a Reply

Twój adres e-mail nie zostanie opublikowany.