sys.dm_db_uncontained_entities (Transact-SQL)

Şunlar için geçerlidir: SQL Server

Veritabanında kullanılan herhangi bir sınırsız nesneleri gösterir. Sınırsız nesneler, kapalı bir veritabanında veritabanı sınırını geçen nesnelerdir. Bu görünüme hem kapalı bir veritabanından hem de içermeyen bir veritabanından erişilebilir. Eğer sys.dm_db_uncontained_entities boşsa, veritabanınız herhangi bir sınırsız varlık kullanmaz.

Bir modül veritabanı sınırını birden fazla kez geçerse, yalnızca ilk keşfedilen geçiş raporlanır.

Sütun adı Type Açıklama
class int 1 = Nesne veya sütun (modüller, XP'ler, görünümler, eşanlamlılar ve tablolar içerir).

4 = Veritabanı Sorumlusu

5 = Derleme

6 = Tür

7 = Indeks (Tam metin İndeks)

12 = Veritabanı DDL Tetikleyicisi

19 = Güzergah

30 = Denetim Spesifikasyonu
class_desc nvarchar(120) Varlığın sınıf tanımı. Sınıfa uygun olanlardan biri:

OBJECT_OR_COLUMN

DATABASE_PRINCIPAL

ASSEMBLY

TYPE

INDEX

DATABASE_DDL_TRIGGER

ROUTE

AUDIT_SPECIFICATION
major_id int Varlığın kimliği.

Sınıf = 1 ise, object_id

Eğer sınıf = 4 ise, sys.database_principals.principal_id.

Sınıf = 5 ise, sys.assemblies.assembly_id.

Eğer sınıf = 6 ise, sys.types.user_type_id.

Eğer sınıf = 7 ise, sys.indexes.index_id.

Eğer sınıf = 12 ise, sys.triggers.object_id.

Eğer sınıf = 19 ise, sys.routes.route_id.

Eğer sınıf = 30, o zaman sys. database_audit_specifications.database_specification_id.
statement_line_number int Sınıf bir modül ise, denetimsiz kullanımın bulunduğu satır numarasını döndürür. Aksi takdirde değer sıfırdır.
statement_ offset_begin int Sınıf bir modül ise, 0 ile başlayan baytlarla sıfır kullanımın başladığı başlangıç konumunu gösterir. Aksi takdirde geri dönüş değeri sıfırdır.
statement_ offset_end int Sınıf bir modül ise, 0 ile başlayan bayt cinsinden, kapalı olmayan kullanımın bitiş konumunu gösterir. -1 değeri modülün sonunu gösterir. Aksi takdirde geri dönüş değeri sıfırdır.
statement_type nvarchar(512) Böyle bir ifade.
feature_ adı nvarchar(256) Nesnenin harici adını döndürür.
feature_type_name nvarchar(256) Özellik türünü döndürüyor.

Açıklamalar

sys.dm_db_uncontained_entities, veritabanı sınırını aşabilecek varlıkları gösterir. Veritabanı dışındaki nesneleri kullanma potansiyeline sahip tüm kullanıcı varlıklarını geri getirir.

Aşağıdaki özellik türleri rapor edilmiştir.

  • Bilinmeyen muhafaza davranışı (dinamik SQL veya ertelenmiş isim çözümlemesi)

  • DBCC komutu

  • Sistem depolanmış prosedür

  • Sistem skaler fonksiyonu

  • Sistem tablo değerli fonksiyonu

  • Sistem yerleşik fonksiyonu

Security

Permissions

sys.dm_db_uncontained_entities yalnızca kullanıcının bir tür izni olan nesneleri döndürür. Veritabanının kapsamını tam olarak değerlendirmek için bu fonksiyon, sistem yöneticisi sabit sunucu rolünün bir üyesi veya db_owner rolü gibi yüksek ayrıcalıklı bir kullanıcı tarafından kullanılmalıdır.

Examples

Aşağıdaki örnek, P1 adlı bir prosedür oluşturur ve ardından sorgular sys.dm_db_uncontained_entitiessorar. Sorgu, P1'in veritabanı dışında olan sys.endpoints kullandığını bildiriyor.

CREATE DATABASE Test;  
GO  
  
USE Test;  
GO  
CREATE PROC P1  
AS   
SELECT * FROM sys.endpoints ;  
GO  
SELECT SO.name, UE.* FROM sys.dm_db_uncontained_entities AS UE  
LEFT JOIN sys.objects AS SO  
    ON UE.major_id = SO.object_id;  

Ayrıca Bkz.

Kapsayıcı Veritabanları