sp_tables (T-SQL)
Berlaku untuk: Titik akhir analitik SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Platform System (PDW) SQL di Microsoft Fabric Warehouse di Microsoft Fabric
Mengembalikan daftar objek yang dapat dikueri di lingkungan saat ini. Ini berarti tabel atau tampilan apa pun, kecuali objek sinonim.
Catatan
Untuk menentukan nama objek dasar sinonim, kueri tampilan katalog sys.synonyms .
Sintaks
Sintaks untuk SQL Server, Azure SQL Database, Azure Synapse Analytics, Analytics Platform System (PDW):
sp_tables
[ [ @table_name = ] N'table_name' ]
[ , [ @table_owner = ] N'table_owner' ]
[ , [ @table_qualifier = ] N'table_qualifier' ]
[ , [ @table_type = ] 'table_type' ]
[ , [ @fUsePattern = ] fUsePattern ]
[ ; ]
Argumen
[ @table_name = ] N'table_name'
Tabel yang digunakan untuk mengembalikan informasi katalog. @table_name adalah nvarchar(384), dengan default NULL
. Pencocokan pola kartubebas didukung.
[ @table_owner = ] N'table_owner'
Pemilik tabel tabel yang digunakan untuk mengembalikan informasi katalog. @table_owner adalah nvarchar(384), dengan default NULL
. Pencocokan pola kartubebas didukung. Jika pemilik tidak ditentukan, aturan visibilitas tabel default dari DBMS yang mendasar berlaku.
Di SQL Server, jika pengguna saat ini memiliki tabel dengan nama yang ditentukan, kolom tabel tersebut dikembalikan. Jika pemilik tidak ditentukan dan pengguna saat ini tidak memiliki tabel dengan nama yang ditentukan, prosedur ini mencari tabel dengan nama yang ditentukan yang dimiliki oleh pemilik database. Jika ada, kolom tabel tersebut dikembalikan.
[ @table_qualifier = ] N'table_qualifier'
Nama kualifikasi tabel. @table_qualifier adalah sysname, dengan default NULL
. Berbagai produk DBMS mendukung penamaan tiga bagian untuk tabel (<qualifier>.<owner>.<name>
). Di SQL Server, kolom ini mewakili nama database. Dalam beberapa produk, ini mewakili nama server lingkungan database tabel.
[ @table_type = ] 'table_type'
Daftar nilai, dipisahkan oleh koma, yang memberikan informasi tentang semua tabel tipe tabel yang ditentukan. Ini termasukTABLE
, SYSTEMTABLE
, dan VIEW
. @table_type adalah varchar(100), dengan default NULL
.
Tanda kutip tunggal harus mengapit setiap jenis tabel, dan tanda kutip ganda harus mengapit seluruh parameter. Jenis tabel harus huruf besar. Jika SET QUOTED_IDENTIFIER
adalah ON
, setiap tanda kutip tunggal harus digandakan dan seluruh parameter harus diapit dalam tanda kutip tunggal.
[ @fUsePattern = ] fUsePattern
Menentukan apakah karakter garis bawah (_
), persen (%
), dan tanda kurung ([
atau ]
) ditafsirkan sebagai karakter kartubebas. Nilai yang valid adalah 0
(pencocokan pola nonaktif) dan 1
(pencocokan pola aktif). @fUsePattern adalah bit, dengan default .1
Mengembalikan nilai kode
Tidak ada.
Tataan hasil
Nama kolom | Jenis data | Deskripsi |
---|---|---|
TABLE_QUALIFIER |
nama sysname | Nama kualifikasi tabel. Di SQL Server, kolom ini mewakili nama database. Bidang ini bisa berupa NULL . |
TABLE_OWNER |
nama sysname | Nama pemilik tabel. Di SQL Server, kolom ini mewakili nama pengguna database yang membuat tabel. Bidang ini selalu mengembalikan nilai. |
TABLE_NAME |
nama sysname | Nama tabel. Bidang ini selalu mengembalikan nilai. |
TABLE_TYPE |
varchar(32) | Tabel, tabel sistem, atau tampilan. |
REMARKS |
varchar(254) | SQL Server tidak mengembalikan nilai untuk kolom ini. |
Keterangan
Untuk interoperabilitas maksimum, klien gateway harus mengasumsikan hanya pencocokan pola SQL-92 standar SQL (karakter % dan _ wildcard).
Informasi hak istimewa tentang akses baca atau tulis pengguna saat ini ke tabel tertentu tidak selalu dicentang. Oleh karena itu akses tidak dijamin. Tataan hasil ini tidak hanya mencakup tabel dan tampilan, tetapi juga sinonim dan alias untuk gateway ke produk DBMS yang mendukung jenis tersebut. Jika atribut ACCESSIBLE_TABLES
server adalah Y dalam hasil yang ditetapkan untuk sp_server_info
, hanya tabel yang dapat diakses oleh pengguna saat ini yang dikembalikan.
sp_tables
setara dengan SQLTables
di ODBC. Hasil yang dikembalikan diurutkan oleh TABLE_TYPE
, , TABLE_OWNER
TABLE_QUALIFIER
, dan TABLE_NAME
.
Izin
Visibilitas metadata dalam tampilan katalog terbatas pada keamanan yang dimiliki pengguna, atau di mana pengguna diberikan beberapa izin. Untuk informasi selengkapnya, lihat Konfigurasi Visibilitas Metadata.
Contoh
J. Mengembalikan daftar objek yang dapat dikueri di lingkungan saat ini
Contoh berikut mengembalikan daftar objek yang bisa menjadi kueri di lingkungan saat ini.
EXEC sp_tables;
B. Mengembalikan informasi tentang tabel dalam skema tertentu
Contoh berikut mengembalikan informasi tentang tabel milik Person
skema dalam database AdventureWorks2022.
USE AdventureWorks2022;
GO
EXEC sp_tables
@table_name = '%',
@table_owner = 'Person',
@table_qualifier = 'AdventureWorks2022';
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
C. Mengembalikan daftar objek yang dapat dikueri di lingkungan saat ini
Contoh berikut mengembalikan daftar objek yang bisa menjadi kueri di lingkungan saat ini.
EXEC sp_tables;
D. Mengembalikan informasi tentang tabel dalam skema tertentu
Contoh berikut mengembalikan informasi tentang tabel dimensi dalam AdventureWorksPDW2012
database.
-- Uses AdventureWorks
EXEC sp_tables
@table_name = 'Dim%',
@table_owner = 'dbo',
@table_qualifier = 'AdventureWorksPDW2012';