SQL Server sistem Kataloğu sorgulama
Belirli bir ile çalışmak için kodlanmış dinamik uygulamalar küme yapısı ve içinde oldukları herhangi bir veritabanı nesnelerinin özniteliklerini belirlemek için bir mekanizma, tabloların ve görünümlerin olması gerekir.Bu uygulamalar aşağıdaki gibi bilgileri gerektirebilir:
Tablolar ve Görünümler veritabanı adlarını ve sayılarını.
Bir tablo veya görünüm adı, veri türü, ölçek ve her sütunun duyarlığı ile birlikte sütun sayısı.
Tablo üzerinde tanımlı kısıtlamalar.
Dizinler ve tanımlanan anahtarlar bir tablo için.
Bu bilgiler için Sistem kataloğu sağlar SQL Server veritabanları.Çekirdeği, SQL Server Sistem kataloglar ise bir görünüm küme örnek nesneleri tanımlayan meta veriler Göster SQL Server.Meta veri nesnelerinin özniteliklerini açıklayan bir sistemde verilerdir.SQL Server-tabanlı uygulamalar aşağıdaki kullanarak sistem kataloglardaki bilgilere erişebilirsiniz:
Katalog görünümleri.Bu erişim yöntem önerilir.
Bilgi şema görünümlerini.
ole db şema satır kümeleri.
odbc katalog işlevler.
Sistem saklı yordamları ve işlevleri.
Katalog Görünümleri
Katalog Görünümleri erişim sağlar meta veriler sunucu üzerindeki her veritabanında depolanır.
Not
Katalog görünümleri, çoğaltma erişim sağlar SQL Server , Aracısı veya yedek meta veriler.
Katalog Görünümleri erişmek için öneririz meta veriler aşağıdaki nedenlerle:
Tüm meta veriler katalog görünümleri kullanılabilir duruma getirilir.
meta veriler katalog görünümleri tüm katalog tablo uygulaması, bağımsız bir biçimde sunmak, bu nedenle katalog görünümleri altta yatan katalog tablolarının yapılan değişikliklerden etkilenmez.
Katalog görünümleri olan çekirdek sunucu erişimi için en etkili yolu meta veriler.
Katalog görünümleri, meta veriler katalog ve elde etmek, dönüştürmek ve bu meta verilerinin özelleştirilmiş formlar sunmak en doğrudan yolu sağlamak için genel arabirim olan.
Katalog görünüm adları ve bunların sütun adlarını açıklayıcı.Sorgu sonuçlar eşleşen ne karşılık gelen özellik bir orta düzeyde bilgi olan bir kullanıcı tarafından beklenen meta veriler , seçmeleri.
Örneğin, kullandığı aşağıdaki sorgu sys.objects Katalog görünümü son 10 gün içinde değiştirilmiş tüm veritabanı nesneleri döndürmek için.
SELECT name AS object_name
,SCHEMA_NAME(schema_id) AS schema_name
,type_desc
,create_date
,modify_date
FROM sys.objects
WHERE modify_date > GETDATE() - 10
ORDER BY modify_date;
Katalog görünümleri kullanarak sistem Kataloğu sorgulama, daha fazla örnek için bkz: SQL Server sistem Kataloğu SSS sorgulama.
Önemli |
---|
Gelecekteki sürümlerinde SQL Server, Microsoft sonuna kadar sütunlar ekleyerek tüm sistem katalog görünümünün tanımını artırılmasısütun listesi. select sözdizimi kullanarak karşı öneririz * from sys.catalog_view_name Üretim kodu olduğundan döndürülen sütun sayısı değiştirin ve break sizin uygulama. |
Bilgi şema görünümlerini
Bilgi şema görünümlerini ISO standart katalog görünüm tanımında esas alır.Bunlar, katalog bilgileri tüm katalog tablo uygulaması, bağımsız bir biçimde sunmak ve bu nedenle altta yatan katalog tablolarının yapılan değişikliklerden etkilenmez.Bu görünümleri kullanan uygulamalar, türdeş olmayan ISO uyumlu veritabanı sistemleri arasında taşınabilir.Daha fazla bilgi için bkz: Bilgi şema görünümlerini (Transact-sql).
Not
Bilgi şema görünümlerini içeren özel meta veriler SQL Server 2008.
Aşağıdaki örnek sorgu INFORMATION_SCHEMA.COLUMNS için tüm sütunları dönmek için Görünüm Person , tablo AdventureWorks2008R2 veritabanı.
SELECT TABLE_NAME, COLUMN_NAME, COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'ColumnID') AS COLUMN_ID
FROM AdventureWorks2008R2.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Person';
Uyumluluk Görünümleri
Birçok sistem tabloları önceki sürümlerinden birini SQL Server Şimdi olarak uygulanan 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 tasarlanmıştır.Bunlar, kullanılabilir meta veriler Göster SQL Server 2000.Ancak, bunların herhangi birini de sunulan özellikleri ile ilgili meta veriler gösterme SQL Server 2005 ve sonrası.Hizmet Aracısı veya bölümleme, gibi yeni özellikleri kullandığınızda, bu nedenle, katalog görünümleri yerine geçmek gerekir.Katalog Görünümleri yükseltmek için iyi bir nedeni budur.Katalog Görünümleri yükseltmek için başka bir kullanıcı kimliklerini saklamak ve kimliklerini yazın Uyumluluk Görünümü sütunlar null döndürebilir veya tetikleyici aritmetik taşıyor nedenidir.Bunun nedeni, SQL Server 2005 ve daha sonra oluşturabileceğiniz birden fazla 32.767 kullanıcılar ve veri türleri.Örneğin, 32.768 kullanıcılar oluşturmak ve bu sorguyu çalıştırıp olsaydı: SELECT * FROM sys.sysusers; ARITHABORT ise küme on, sorgu aritmetik taşma hata ile başarısız olur.ARITHABORT ise küme için kapalı, uid sütun döndürür null.
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 kullanarak yükseltmeniz önerilir.
ole db şema satır kümeleri
ole db belirtimine tanımlayan bir IDBSchemaRowset arabirim katalog bilgileri içeren şema satır kümeleri küme sunar.ole db şema satır kümeleri farklı ole db sağlayıcıları tarafından desteklenen katalog bilgileri sunmak için bir standart yöntem.Satır kümeleri altta yatan katalog tablolarının yapısını bağımsızdır.Daha fazla bilgi için bkz: Şema satır kümesi desteği (ole db).
Microsoft SQL Server yerel istemci ole db sağlayıcısı destekleyen bir uzantı IDBSchemaRowset , raporları katalog bilgilerini bağlantılı sunucularda kullanılan dağıtılmış sorgular.Daha fazla bilgi için bkz: LINKEDSERVERS satır kümesi (ole db).
odbc katalog işlevleri
odbc belirtimi, bir katalog bilgileri içeren sonuç kümeleri katalog işlevler küme tanımlar.Bu iþlevler þunlardýr: farklı odbc sürücüleri tarafından desteklenen katalog bilgileri sunmak için standart bir yöntem.Sonuç kümeleri altta yatan katalog tablolarının yapısını bağımsızdır.
sql Server yerel istemci odbc sürücüsü Dağıtılmış sorgularda kullanılan bağlantılı sunucular için katalog bilgileri rapor iki sürücüye özgü işlevleri destekler.Daha fazla bilgi için bkz: Katalog işlevleri kullanma.
Sistem yordamları ve işlevleri depolanır.
Transact-SQL Sunucu sistem saklı yordamları ve Katalog bilgisi döndüren sistem işlevleri tanımlar.Bu saklı yordamları ve işlevleri için belirli rağmen SQL Server, bunlar verenlerden kullanıcılardan yapısının temel sistem Kataloğu tabloları.Daha fazla bilgi için bkz: Meta veri işlevler (Transact-sql) ve Sistem saklı yordamları (Transact-sql).