Breaking News
Loading...
26/09/2013

Drop all trigger all many databases

Trong project hiện tại, có 1 SQL Server instance được host nhiều database giống nhau về cấu trúc và đang có những trigger hoạt động trên những table giống nhau.

Tôi được yêu cầu viết 1 đoạn script drop tất cả trigger trên các database này.

Đây là đoạn script của tôi, điểm mấu chốt ở đây là undocumented Stored Procedure sp_MSforeachdb, cho phép ta thực thi T-SQL scripts trên nhiều database trong 1 SQL Server Instance.

EXECUTE master.sys.sp_MSforeachdb
'USE [?];
IF EXISTS
(SELECT 1 FROM sys.objects
WHERE object_id = OBJECT_ID(N''[dbo].[YourTrigger]'')
AND type in (N''TR''))
 Drop Trigger [dbo].[YourTrigger];'

0 comments:

Post a Comment

 
Toggle Footer