drop TETIKLEYICI (Transact-sql)
Bir veya daha fazla dml veya ddl tetikleyici geçerli veritabanından kaldırır.
Transact-SQL Sözdizim Kuralları
Sözdizimi
Trigger on an INSERT, UPDATE, or DELETE statement to a table or view (DML Trigger)
DROP TRIGGER [schema_name.]trigger_name [ ,...n ] [ ; ]
Trigger on a CREATE, ALTER, DROP, GRANT, DENY, REVOKE or UPDATE statement (DDL Trigger)
DROP TRIGGER trigger_name [ ,...n ]
ON { DATABASE | ALL SERVER }
[ ; ]
Trigger on a LOGON event (Logon Trigger)
DROP TRIGGER trigger_name [ ,...n ]
ON ALL SERVER
Bağımsız değişkenler
schema_name
DML tetikleyicisinin ait olduğu şemanın adıdır. DML tetikleyicileri, üzerinde oluşturuldukları tablo veya görünümün şemasının kapsamıyla sınırlıdır. schema_nameddl ya da logon tetikleyici belirtilemez.trigger_name
Kaldırmak için tetikleyici adıdır. Şu anda oluşturulan Tetikleyiciler listesini görmek için sys.server_assembly_modules veya sys.server_triggers.DATABASE
ddl tetikleyici kapsam geçerli veritabanına uygulanan gösterir. VERİTABANI olmalıdır Tetikleyici oluşturulduğu veya değiştirildiği zaman o da belirtildi, belirtilen.ALL SERVER
ddl tetikleyici kapsam geçerli sunucuya uygulanan gösterir. TÜM sunucu olmalıdır Tetikleyici oluşturulduğu veya değiştirildiği zaman o da belirtildi, belirtilen. TÜM sunucu, oturum açma Tetikleyiciler için de geçerlidir.[!NOT]
Bu seçenek içerilen bir veritabanında kullanılamaz.
Açıklamalar
dml tetikleyici sürükleyip bırakarak veya tetikleyici tablo bırakarak kaldırabilirsiniz. Tablo bırakılan tüm ilişkilendirilmiş tetikleyiciler de bırakılır.
Tetikleyici bırakılan tetikleyici hakkında bilgi kaldırılır sys.objects, sys.triggers ve sys.sql_modules katalog görünümler.
Eğer sadece tüm tetikleyiciler kullanarak üzerinde yan tümceleri özdeş oluşturulan birden çok ddl tetikleyici TETIKLEYICI drop deyimi kesilmesini.
Tetikleyiciyi yeniden adlandırma için tetikleyici açılan ve create TETIKLEYICI kullanın. Bir tetikleyici tanımını değiştirmek için alter TETIKLEYICI kullanın.
Belirli bir tetikleyici bağımlılıkları belirleme hakkında daha fazla bilgi için bkz: c.sys.sql_expression_dependencies, sys.dm_sql_referenced_entities (Transact-sql), ve sys.dm_sql_referencing_entities (Transact-sql).
Tetikleyici metnini görüntüleme hakkında daha fazla bilgi için sp_helptext (Transact-sql)ve sys.sql_modules (Transact-sql).
Varolan Tetikleyiciler listesini görüntüleme hakkında daha fazla bilgi için sys.triggers (Transact-sql)ve sys.server_triggers (Transact-sql).
İzinler
Bir dml bırakmak için tablo veya Görünüm tetikleyici tanımlanmış alter izninin tetikleyici gerektirir.
Bir ddl düşmesi ile sunucu kapsamı (on all server) tanımlanmış tetikleyici ya da logon tetikleyici Server control server izni gerektirir. Bir ddl bırak için alter any database ddl tetikleyici izni geçerli veritabanında (on database) kapsam ile tanımlanan tetikleyici gerektirir.
Örnekler
A.Bir dml tetikleyici siliniyor
Aşağıdaki örnek employee_insupdtetikleyici.
USE AdventureWorks2012;
GO
IF OBJECT_ID ('employee_insupd', 'TR') IS NOT NULL
DROP TRIGGER employee_insupd;
GO
B.Bir dml tetikleyici siliniyor
Aşağıdaki örnek düşünceye ddl tetikleyici safety.
Önemli |
---|
Çünkü ddl Tetikleyiciler şema kapsamlı değildir ve bu nedenle görünmez, sys.objects katalog görünüm veritabanında mevcut olup olmadığını sorgulamak için OBJECT_ID işlevi kullanılamaz. Uygun Katalog görünümü kullanarak değil şema kapsamlı nesneleri seçmeleri gerekir. ddl Tetikleyiciler kullanın sys.triggers. |
USE AdventureWorks2012;
GO
IF EXISTS (SELECT * FROM sys.triggers
WHERE parent_class = 0 AND name = 'safety')
DROP TRIGGER safety
ON DATABASE;
GO
Ayrıca bkz.
Başvuru
alter TETIKLEYICI (Transact-sql)
TETIKLEYICI (Transact-sql) etkinleştir
DISABLE TETIKLEYICI (Transact-sql)
sys.trigger_events (Transact-sql)
sys.sql_modules (Transact-sql)
sys.assembly_modules (Transact-sql)
sys.server_triggers (Transact-sql)
sys.server_trigger_events (Transact-sql)
sys.server_sql_modules (Transact-sql)
sys.server_assembly_modules (Transact-sql)