Triggers weergeven in SQL Server Management Studio

door: Daniel Farina / bijgewerkt: 2019-04-03 | Comments | verwant: meer > Triggers

probleem

SQL Server heeft vele typen triggers die kunnen worden aangemaakt, maar het vinden van de gebruikersql Server Management Studio (SSMS) kan niet eenvoudig zijn als u niet zeker weet waar u moet zoeken. In deze tip bekijken we hoe SSM ‘ s gebruikt kunnen worden om zowel dmltriggers als dddl triggers te vinden en te beheren.

oplossing

SQL Server Management Studio is een grafische interface waarmee de gebruiker scripts kan configureren, beheren en bewerken. Hoewel de GUI is gemakkelijk te gebruiken, moeten we erkennen dat weten waar te vinden objecten is niet altijd zo eenvoudig en dit is waar met triggers omdater verschillende soorten triggers en ze zijn niet allemaal op dezelfde plaats inSSMS.

Triggers in SQL Server Management Studio

er zijn twee typen triggers die kunnen worden aangemaakt:

  • DML-triggers (Data Manipulation Language)en
  • DDL-triggers (Data Definition Language).

de DML triggers zijn degenen die branden wanneer een SQLstatement probeert de gegevens van een bepaalde tabel of weergave te wijzigen. Deze kunnen worden gemaakt op tafels en uitzicht.

aan de andere kant activeert DDL brand wanneer een SQL-statement de fysieke structuur van de database probeert te veranderen (dat wil zeggen databaseobjecten maken, wijzigen of verwijderen).Daarnaast zijn er DDL triggers die branden wanneer er wijzigingen zijn aan serverobjects (bijvoorbeeld gekoppelde servers of databases maken, wijzigen of laten vallen).

In de volgende secties zal ik u laten zien hoe u toegang krijgt tot elk type trigger withinSSMS.

Table Scoped SQL Server DML Triggers

als we de triggers op een specifieke tabel moeten zien, kunnen we SSMS gebruiken in de volgende weg. Vouw eerst Databases uit en vouw vervolgens de database uit die de tabel bevat. Nextexpand de Tables map en vind de tabel die u zoekt vouw de tabel uit en vouw Triggers uit om een lijst van triggers voor de tabel te zien zoals hieronder getoond.

dit zijn de stappen om triggers met een tabelbereik in SSM ' s te vinden.

nu we de trigger hebben gevonden, klikt u met de rechtermuisknop op de trigger om een menu te zien van wat u kunt doen vanuit SSM ‘ s. Als u klikt op Script Trigger asyou kunt zien de verschillende scripts die u kunt maken van SSMS zoals hieronder weergegeven.

contextueel menu van triggers met tabelbereik.

dit contextmenu geeft u de kans om afhankelijkheden te wijzigen, script, te bekijken,in-of uit te schakelen en de trigger te verwijderen. Het modify item opent een nieuw script venster in de SSMS editor met de broncode van de trigger scripted als een alter TRIGGERstatement.

View Scoped SQL Server DML-Triggers

daarnaast kunnen SSM ‘ s worden gebruikt om te kijken naar triggers die zijn scoped naar weergaven.Volg dezelfde stappen alsof u op zoek bent naar een table scoped trigger,maar in plaats van de Tabelmap uit te breiden, de Weergavemap uit te breiden. Thenext screen capture toont deze stappen in volgorde.

dit zijn de stappen om view scoped triggers in SSMS te vinden.

Als u met de rechtermuisknop op de trigger klikt, ziet u ook een menusimilar naar de trigger scoped tabellen.

contextueel menu van View scoped triggers.

SQL Server Database Scoped DDL Triggers

als u deze triggers wilt bekijken, gaat u naar de programmability folder in de database en zoekt u naar een submap met de naam Database Triggers zoals hieronder weergegeven.

dit zijn de stappen om triggers met een databasekop te vinden in SSM ' s.

u zult merken op de volgende schermopname dat als u met de rechtermuisknop op een databasetrigger klikt, het contextmenu iets anders is dan dat van table en viewscoped triggers. Er is geen Modify item, maar toch hebben we de kans om de trigger als DROP te schrijven en statements te maken. Ook, zoals op de tabel andview scoped triggers, hebben we de opties om de trigger afhankelijkheden te bekijken, enableof uitschakelen en verwijderen van de trigger.

contextueel menu van triggers met databasekopie.

Server SQL Server DDL-Triggers

als we DDL-triggers willen zien die de gehele server beïnvloeden, moeten we de map serverobjecten bekijken in de boomstructuur van de server. Je ziet een kind branchTriggers. Vouw de Triggermappen uit om een lijst met DDL-triggers op de server weer te geven.

dit zijn de stappen om triggers met serverbereik in SSM ' s te vinden.

wanneer we met de rechtermuisknop op de trigger naam klikken, zullen we een menu zien met dezelfde items als de database scoped triggers.

contextueel menu van triggers met serverbereik.
volgende stappen
  • deze tip is geschreven met SQL Server Management Studio v17. 9.Als u nog steeds met behulp van een oudere versie van SSMS ik stel voor dat u lees de volgende tip om te zien of het de moeite waard upgradingnieuwe functies in SQL ServerManagement Studio v17. Bekijk ook deze tipSQL Server Management Studio 17.X belangrijke functies.
  • als er geen SSM ‘ s zijn geïnstalleerd, bekijk dan deze tip voor een Snelgids over hoe SQL Server Management Studio op uw lokale Computer kan worden geïnstalleerd.
  • als u de naam van de trigger kent, kunt u de objectzoekfunctie van SSMS gebruiken.U kunt hier meer over te weten komen met behulp van Object Explorer Details en Object zoekfunctie van SSMS 2008.
  • Als u de naam van de trigger niet kent, kunt u de scriptsuit deze tip gebruiken:Zoek alle Triggers van SQL Server om snel in-of uit te schakelen.
  • als u triggers voor een database wilt script, kunt u de volgende triggers van tipScript bekijken vanuit elke database in SQL Server.
  • stay tuned to theseql Server Triggers tips category for more tips and tricks using triggers.
  • voor meer tips met betrekking tot SSM ‘ s kunt u door de QL Server Management Studio-tips categorie bladeren.

scripts ophalen

volgende tip knop

over de auteur
Daniel Farina werd geboren in Buenos Aires, Argentinië. Zelfopgeleid, vanaf zijn kindertijd toonde hij een passie voor leren.
Bekijk al mijn tips

artikel Laatst bijgewerkt: 2019-04-03

Leave a Reply

Het e-mailadres wordt niet gepubliceerd.