DROP TRIGGER (Transact-SQL)

Bir veya daha fazla DML veya DDL Tetikleyicileri, geçerli veritabanından kaldırır.

Topic link iconTransact-SQL sözdizimi kuralları

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 tetikleyicisi ait olduğu şema adıdır.DML triggers are scoped to the schema of the table or view on which they are created.schema_name cannot be specified for DDL or logon triggers.

  • trigger_name
    Tetikleyici kaldırmak için adıdır.Şu anda oluşturulan tetikleyicilerin listesini görmek için kullanın. sys.server_assembly_modules or sys.server_triggers.

  • VERİTABANI
    DDL tetikleyicisi kapsamını geçerli veritabanı için geçerli olmadığını gösterir.DATABASE olmalıdır tetikleyici oluşturulduğunda veya değiştirildiğinde, bu da belirtildi, belirtildi.

  • TÜM SUNUCU
    DDL tetikleyicisi kapsam geçerli sunucu için geçerli olmadığını gösterir.Tüm SUNUCU olmalıdır tetikleyici oluşturulduğunda veya değiştirildiğinde, bu da belirtildi, belirtildi.Tüm SUNUCU, oturum açma Tetikleyicileri için de geçerlidir.

Remarks

DML tetikleyicisi sürükleyip bırakarak veya tetikleyicisi tabloyu bırakarak kaldırabilirsiniz.Tüm ilişkilendirilmiş tetikleyiciler, bir tablo kesildiğinde, ayrıca bırakılır.

Tetikleyici kesildiğinde, tetikleyici hakkında bilgileri kaldırılır sys.Objects, trigger and sql_dependencies katalog görünümleri.

Birden çok DDL Tetikleyicileri DROP TRIGGER bırakılan deyim yalnızca tüm Tetikleyicileri kullanılarak yan tümceleri aynı oluşturulan varsa.

Tetikleyiciyi yeniden adlandırmak için , DROP TRIGGER ve CREATE TRIGGER kullanın.Tetikleyici tanımını değiştirmek için ALTER TRIGGER Ek Yardım düğmesini kullanın.

Belirli bir tetikleyici için bağımlılıklar belirleme hakkında daha fazla bilgi için bkz: 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 bkz: sp_helptext (Transact-SQL) ve sql_dependencies (Transact-SQL).

Varolan tetikleyiciler listesini görüntüleme hakkında daha fazla bilgi için bkz: trigger (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 iznine tetikleyicisi gerektirir.

Bir DDL bırakmak için (TÜM SUNUCU ON) sunucu kapsam ile tanımlanan tetikleyicisi ya da bir oturum açma tetikleyicisi sunucudaki CONTROL SERVER izni gerektirir.Bir DDL bırakmak için ALTER ANY DATABASE DDL tetikleyicisi izni geçerli veritabanında veritabanı (ON DATABASE) kapsam ile tanımlanan tetikleyicisi gerektirir.

Örnekler

C.DML tetikleyicisi siliniyor

Aşağıdaki örnek düşünceye employee_insupd Tetikleyici.

b.DDL tetikleyicisi siliniyor

Aşağıdaki örnek, DDL tetikleyicisi keser safety.

Important noteImportant Note:

DDL Tetikleyicileri kapsamlı şema değildir ve bu nedenle görünmez olduğundan, sys.Objects Katalog görünümü, veritabanında kayıtlı olup olmadığını sorgulamak için OBJECT_ID işlev kullanılamaz.Uygun kataloğun görünümünü kullanarak değil şema kapsamlı nesneleri seçmeleri gerekir.DDL Tetikleyicileri kullanır. trigger.