Share via


Uyumluluk Görünümleri (Transact-SQL)

sistem tabloları ' ın önceki sürümlerinden çok SQL Server Şimdi uygulanan olarak bir küme , görünümler.Bu görünümler uyumluluk görünümleri bilinir ve yalnızca geriye dönük uyumluluk için kullanılması amaçlanır.Uyumluluk Görünümleri bulunan aynı meta veriler açığa çıkaran SQL Server 2000.Ancak, uyumluluk görünümleri getirilmiştir özellikleri ilgili meta veriler birini bildirilmemesi SQL Server 2005 ve sonrası.Bu nedenle, kullandığınızda yeni özellikler gibi Service Broker veya bölümleme, gereken geçiş katalog görünümlerikullanarak için.

katalog görünümleri yükseltmek için başka bir kullanıcı kimliklerini saklamak ve tür kimlikleri Uyumluluk Görünümü sütunlar null döndürebilir veya tetikleyici aritmetik taşıyor nedenidir.Bu durum, birden fazla 32.767 kullanıcıları, grupları ve rolleri ve 32.767 veri türleri oluşturabilirsiniz çünkü.Örneğin, 32.768 kullanıcılar oluşturmak ve aşağıdaki sorguyu çalıştırmak için olsaydı: SELECT * FROM sys.sysusers.ARITHABORT küme açık değilse, sorguyu aritmetik taşma hatayla başarısız olur.ARITHABORT küme için off, ise uid sütun null döndürüyor.

Bu sorunları önlemek için kullanıcı kimlikleri sayısındaki artışla işlemek ve kimliklerini yazın yeni katalog görünümleri kullanmanızı öneririz.Aşağıdaki tablo , bu taşma tabi olan sütunları listeler.

Sütun adı

Uyumluluk Görünümü

SQL Server 2005 görünümü

xusertype

syscolumns

sys.Columns

UserType

syscolumns

sys.Columns

memberuid

Sysmembers

sys.database_role_members

groupuid

Sysmembers

sys.database_role_members

UID

sysobjects

sys.Objects

UID

sysprotects

  • sys.database_permissions

  • sys.server_permissions

grantor

sysprotects

  • sys.database_permissions

  • sys.server_permissions

xusertype

systypes

sys.Types

UID

systypes

sys.Types

UID

sysusers

sys.database_principals

altuid

sysusers

sys.database_principals

Gid

sysusers

sys.database_principals

UID

syscacheobjects

sys.dm_exec_plan_attributes

UID

sysprocesses

sys.dm_exec_requests