dml Tetikleyiciler hakkında bilgi almak

dml Tetikleyiciler hakkında bilgi almak yöntemi açıklanmıştır SQL Server 2012kullanarak SQL Server Management Studioya Transact-SQL. Bu bilgiler, bir Tablo Tetikleyicileri türleri, tetikleyici, sahibi ve oluşturulma veya değiştirilme tarihine adını içerebilir. Tetikleyici oluşturulduğu sırada şifrelenmiş değil, tetikleyici tanımını elde edilir. Tanımı, tetikleyici tablo kadar bunun üzerinde tanımlandığı etkilemesi anlamanıza yardımcı olmak için kullanabilirsiniz. Ayrıca, belirli bir tetikleyici kullandığı nesneleri bulabilirsiniz. Bu bilgilerle, eğer onlar değişen veya veritabanında silinmiş tetikleyici etkileyen nesneleri tanımlayabilirsiniz.

Bu Konuda

  • Başlamadan Önce

    Güvenlik

  • dml Tetikleyiciler, kullanma hakkında bilgi almak için:

    SQL Server Management Studio

    Transact-SQL

Başlamadan Önce

Güvenlik

İzinler

  • sys.SQL.modules, sys.object, sys.triggers, sys.events, sys.trigger_events
    Katalog görünümlerinde meta verinin görünürlüğü bir kullanıcının ya sahibi olduğu ya da bazı izinlerine sahip olduğu güvenliği sağlanabilen öğelerle sınırlıdır.Daha fazla bilgi için bkz: Meta veri görünürlük yapılandırma.

  • OBJECT_DEFINITION, objectproperty, sp_helptext
    Üyelik Genel rolü. Nesne sahibi veya hibe aşağıdaki izinlerden herhangi biri olan kullanıcı nesnelerinin tanımı görülebilir: alter, control, SAHIPLIK alın veya VIEW DEFINITION. Bu izinleri örtülü üyeleri tarafından düzenlenen db_owner, db_ddladmin, ve db_securityadmin veritabanı rolleri sabit.

  • sys.sql_expression_dependencies
    Üzerinde görünüm tanımı izni veritabanında ve select izni gerektirir c.sys.sql_expression_dependencies veritabanı için. Varsayılan olarak, yalnızca üyelerine select izni verilir db_owner veritabanı rolü. SEÇTİĞİNİZDE ve VIEW DEFINITION izinlerinden grantee veritabanındaki tüm bağımlılıkları görebilirsiniz başka bir kullanıcıya verilir.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

SQL Server Management Studio Kullanarak

dml tetikleyici tanımını görüntülemek için

  1. İçinde Object Explorer, örneğine bağlanmak Veritabanı Altyapısıve bu örneği genişletin.

  2. Genişletmek istediğiniz veritabanı genişletin tablove tetikleyici tanımını görüntülemek istediğiniz içeren tabloyu genişletin.

  3. Genişletme Tetikleyicileri, istediğiniz ve sonra tıklatın tetikleyiciyi sağ tıklatın Değiştir. dml tetikleyici tanımını, sorgu penceresinde görünür.

dml tetikleyici bağımlılıkları görüntülemek için

  1. İçinde Object Explorer, örneğine bağlanmak Veritabanı Altyapısıve bu örneği genişletin.

  2. Genişletmek istediğiniz veritabanı genişletin tablove tetik ve bağımlılıklarını görüntülemek istediğiniz içeren tabloyu genişletin.

  3. Genişletme Tetikleyicileri, istediğiniz ve sonra tıklatın tetikleyiciyi sağ tıklatın Bağımlılıklarını görüntüleme.

  4. İçinde Nesne bağımlılıkları dml tetikleyici, seçim bağlıdır nesneleri görüntülemek için pencereyi, bağımlı nesneleri <dml tetikleyici adı>. Nesneleri görünür bağımlılıkları alan.

    dml bağımlı olduğu nesneleri görüntülemek için nesneleri hangi <dml tetikleyici adı > bağlı. Nesneleri görünür bağımlılıkları alan. Tüm nesneleri görmek için her düğümünü genişletin.

  5. Görüntülenen nesne hakkında bilgi edinmek için bağımlılıkları alan, nesneyi tıklatın. İçinde Seçili nesne alan, bilgi içinde sağlanan ad, türü, ve bağımlılık türü kutuları.

  6. Kapatmak için Nesne bağımlılıkları penceresini tıklayın Tamam.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Transact-SQL'i Kullanma

dml tetikleyici tanımını görüntülemek için

  1. Bağlanmak Veritabanı Altyapısı.

  2. Standart çubuğundan tıklatın Yeni sorgu.

  3. Kopyalama ve aşağıdaki örneklerden birini sorgu penceresine yapıştırın ve tıkırtı Execute. Her örnek, nasıl sen-ebilmek görüş tanımını gösterir iuPersontetikleyici.

USE AdventureWorks2012;
GO
SELECT definition 
FROM sys.sql_modules
WHERE object_id = OBJECT_ID(N'Person.iuPerson'); 
GO

USE AdventureWorks2012; 
GO
SELECT OBJECT_DEFINITION (OBJECT_ID(N'Person.iuPerson')) AS ObjectDefinition; 
GO

USE AdventureWorks2012; 
GO
EXEC sp_helptext 'Person.iuPerson'
GO

dml tetikleyici bağımlılıkları görüntülemek için

  1. Bağlanmak Veritabanı Altyapısı.

  2. Standart çubuğundan tıklatın Yeni sorgu.

  3. Kopyalama ve aşağıdaki örneklerden birini sorgu penceresine yapıştırın ve tıkırtı Execute. Her örnek, nasıl sen-ebilmek görüş bağımlılıkları gösterir iuPersontetikleyici.

USE AdventureWorks2012; 
GO
SELECT OBJECT_NAME(referencing_id) AS referencing_entity_name, 
    o.type_desc AS referencing_desciption, 
    COALESCE(COL_NAME(referencing_id, referencing_minor_id), '(n/a)') AS referencing_minor_id, 
    referencing_class_desc, referenced_class_desc, 
    referenced_server_name, referenced_database_name, referenced_schema_name, 
    referenced_entity_name, 
    COALESCE(COL_NAME(referenced_id, referenced_minor_id), '(n/a)') AS referenced_column_name, 
    is_caller_dependent, is_ambiguous
FROM sys.sql_expression_dependencies AS sed
INNER JOIN sys.objects AS o ON sed.referencing_id = o.object_id
WHERE referencing_id = OBJECT_ID(N'Person.iuPerson'); 
GO

Veritabanındaki dml Tetikleyiciler hakkında bilgi görüntülemek için

  1. Bağlanmak Veritabanı Altyapısı.

  2. Standart çubuğundan tıklatın Yeni sorgu.

  3. Kopyalama ve aşağıdaki örneklerden birini sorgu penceresine yapıştırın ve tıkırtı Execute. Her örnek, nasıl sen-ebilmek görüş dml Tetikleyiciler hakkında bilgi gösterir (TR) veritabanında.

USE AdventureWorks2012; 
GO
SELECT  name, parent_id, create_date, modify_date, is_instead_of_trigger
FROM sys.triggers
WHERE type = 'TR'; 
GO

USE AdventureWorks2012; 
GO
SELECT  name, object_id, schema_id, parent_object_id, type_desc, create_date, modify_date, is_published
FROM sys.objects
WHERE type = 'TR'; 
GO

USE AdventureWorks2012; 
GO
SELECT OBJECTPROPERTY(OBJECT_ID(N'Person.iuPerson'), 'ExecIsInsteadOfTrigger'); 
GO

dml tetikleyici harekete olaylar hakkındaki bilgileri görüntülemek için

  1. Bağlanmak Veritabanı Altyapısı.

  2. Standart çubuğundan tıklatın Yeni sorgu.

  3. Kopyalama ve aşağıdaki örneklerden birini sorgu penceresine yapıştırın ve tıkırtı Execute. Her örnek, yangın olayları görüntüleme biçimini gösterir iuPersontetikleyici.

USE AdventureWorks2012; 
GO
SELECT object_id, type, type_desc, is_trigger_event, event_group_type, event_group_type_desc 
FROM sys.events
WHERE object_id = OBJECT_ID('Person.iuPerson'); 
GO

USE AdventureWorks2012; 
GO SELECT object_id, type,is_first, is_last
FROM sys.trigger_events
WHERE object_id = OBJECT_ID('Person.iuPerson'); 
GO

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Ayrıca bkz.

Başvuru

CREATE TRIGGER (Transact-SQL)

drop TETIKLEYICI (Transact-sql)

TETIKLEYICI (Transact-sql) etkinleştir

DISABLE TETIKLEYICI (Transact-sql)

eventdata (Transact-sql)

sp_rename (Transact-sql)

alter TETIKLEYICI (Transact-sql)

sp_help (Transact-sql)

sp_helptrigger (Transact-sql)

sys.triggers (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)

objectproperty (Transact-sql)

OBJECT_DEFINITION (Transact-sql)