sp_tables (Transact-SQL)
Geçerli ortamda sorgulanabilir nesnelerin listesini döndürür.Bu görünen bir from yan tümce, eş nesneler dışında herhangi bir nesne anlamına gelir.
Not
Veri türünün eşanlamlısı temel nesne adını belirlemek için query sys.synonyms Katalog görünümü.
Sözdizimi
sp_tables [ [ @table_name = ] 'name' ]
[ , [ @table_owner = ] 'owner' ]
[ , [ @table_qualifier = ] 'qualifier' ]
[ , [ @table_type = ] "type" ]
[ , [@fUsePattern = ] 'fUsePattern'];
Bağımsız değişkenler
[ @table_name= ] 'name'
tablo katalog bilgi döndürmek için kullanılır.nameİş nvarchar(384), varsayılan değer null.Joker karakter deseniyle eşleşen desteklenir.[ @table_owner= ] 'owner'
tablo tablo sahibi katalog bilgi döndürmek için kullanılır.ownerİş nvarchar(384), varsayılan değer null.Joker karakter deseniyle eşleşen desteklenir.Sahibi belirtilmezse, temel alınan DBMS varsayılan tablo görünürlük kuralları uygulanır.De SQL Server, geçerli kullanıcının belirtilen ada sahip bir tablo içeriyorsa, o tablo sütunları döndürülen.Sahibi belirtilmemiş ve geçerli kullanıcının belirtilen ada sahip bir tablo sahibi değilse, bu yordamı tarafından veritabanı sahibi olduğu belirtilen ada sahip bir tablo için arar.Varsa, o tablo sütunları döndürülür.
[ @ TABLE_QUALIFIER= ] 'qualifier'
tabloniteleyiciadıdır. qualifierİş sysname, varsayılan değer null.Tablolar için üç bölümlü adlandırma çeşitli DBMS ürünleri destekler (niteleyici**.sahibi.**name).De SQL Server, bu sütun temsil eden veritabanı adı.Bazı ürünler, bu tabloveritabanı ortamında sunucu adı temsil eder.[ , @table_type= "'type', 'type'" ]
Belirtilen tablo türleri tüm tabloları hakkında bilgi veren, virgülle ayrılmış değerler listesidir.Bunlar Tablo, systemtable, ve VIEW.typeİş varchar(100), varsayılan değer null.Not
Her tablo türü tek tırnak işaretleri içine almanız gerekir ve tüm parametre çift tırnak işaretleri içine almanız gerekir.Tablo türleri büyük harf olmalıdır.set QUOTED_IDENTIFIER on ise, her tek tırnak işareti çift olmalı ve tüm parametre tek tırnak işareti içine alınmalıdır.
[ @ fUsePattern =] 'fUsePattern'
Alt çizgi (_), yüzde (%) ve köşeli parantez ([veya]) karakterleri joker karakter olarak yorumlanır olup olmadığını belirler.Geçerli değerler 0 (Desen eşleştirme kapalıdır) ve 1 (Desen eşleştirme açıktır).fUsePatternİş bit, varsayılan değer 1.
Dönüş Kodu Değerleri
Hiçbiri
Sonuç Kümeleri
Sütun adı |
Veri türü |
Açıklama |
---|---|---|
TABLE_QUALIFIER |
sysname |
Tablo niteleyici adı.De SQL Server, bu sütun temsil eden veritabanı adı.Bu alan boş olabilir. |
TABLE_OWNER |
sysname |
Tablo sahibinin adı.De SQL Server, bu sütun tablooluşturulan veritabanı kullanıcı adını temsil eder.Bu alan , her zaman bir değer döndürür. |
TABLE_NAME |
sysname |
Tablo adı.Bu alan , her zaman bir değer döndürür. |
DEĞİŞKENİNDEKİ TABLE_TYPE |
varchar(32) |
Tablo, sistem tablosuveya görünüm. |
AÇIKLAMALAR |
varchar(254) |
SQL ServerBu sütuniçin bir değer döndürmez. |
Açıklamalar
En iyi birlikte çalışabilirlik için ağ geçidi istemci yalnızca SQL-92 varsaymalıdır-standart SQL desen eşleştirme (% ve _ joker karakter).
Ayrıcalık bilgileri geçerli kullanıcının okuma veya yazma erişimi belirli bir tablo için her zaman seçili değil.Bu nedenle erişim garanti edilmez.Bu sonuç kümesi , yalnızca tablolar ve görünümler, ancak ayrıca eşanlamlı ve bu tip Destek DBMS ürünleri ağ geçitleri için diğer adlar içerir.Yoksa sunucu öznitelik ACCESSIBLE_TABLES y sonuç kümesi için ise sp_server_info, yalnızca geçerli kullanıcı tarafından erişilebilen tablolar döndürülür.
sp_tables eşdeğerdir SQLTables odbc içinde.Döndürülen sonuçlar tarafından sipariş değişkenindeki table_type, TABLE_QUALIFIER, table_owner, ve table_name.
İzinler
Şema üzerinde select izni gerektirir.
Örnekler
A.Geçerli ortamda sorgulanabilir nesnelerin listesini döndürme
Aşağıdaki örnek, geçerli ortamda sorgulanabilir nesnelerin listesini verir.
EXEC sp_tables ;
B.Bir veritabanında tablolar hakkında bilgi döndüren
Aşağıdaki örnek verir ait tabloları hakkında bilgi Person şemada AdventureWorks2008R2 veritabanı.
USE AdventureWorks2008R2;
GO
EXEC sp_tables
@table_name = '%',
@table_owner = 'Person',
@table_qualifier = 'AdventureWorks2008R2';