sp_pkeys (T-SQL)
Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics AnalyticsPlatform System (PDW)Warehouse di Microsoft Fabric
Mengembalikan informasi kunci utama untuk satu tabel di lingkungan saat ini.
Sintaks
-- Syntax for SQL Server, Azure SQL Database, Azure Synapse Analytics, Parallel Data Warehouse
sp_pkeys [ @table_name = ] 'name'
[ , [ @table_owner = ] 'owner' ]
[ , [ @table_qualifier = ] 'qualifier' ]
Argumen
[ @table_name= ] 'nama'
Adalah tabel untuk mengembalikan informasi. nama adalah sysname, tanpa default. Pencocokan pola kartubebas tidak didukung.
[ @table_owner= ] 'pemilik'
Menentukan pemilik tabel dari tabel yang ditentukan. pemilik adalah sysname, dengan default NULL. Pencocokan pola kartubebas tidak 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= ] 'kualifikasi'
Apakah kualifikasi tabel. qualifier adalah sysname, dengan default NULL. Berbagai produk DBMS mendukung penamaan tiga bagian untuk tabel (kualifikasi.pemilik.nama). Di SQL Server, kolom ini mewakili nama database. Dalam beberapa produk, ini mewakili nama server lingkungan database tabel.
Mengembalikan Nilai Kode
Tidak
Tataan Hasil
Nama kolom | Jenis data | Deskripsi |
---|---|---|
TABLE_QUALIFIER | nama sysname | Nama kualifikasi tabel. Bidang ini bisa NULL. |
TABLE_OWNER | nama sysname | Nama pemilik tabel. Bidang ini selalu mengembalikan nilai. |
TABLE_NAME | nama sysname | Nama tabel. Di SQL Server, kolom ini mewakili nama tabel seperti yang tercantum dalam tabel sysobjects. Bidang ini selalu mengembalikan nilai. |
COLUMN_NAME | nama sysname | Nama kolom, untuk setiap kolom TABLE_NAME dikembalikan. Di SQL Server, kolom ini mewakili nama kolom seperti yang tercantum dalam tabel sys.columns. Bidang ini selalu mengembalikan nilai. |
KEY_SEQ | smallint | Nomor urut kolom dalam kunci primer multikolom. |
PK_NAME | nama sysname | Pengidentifikasi kunci utama. Mengembalikan NULL jika tidak berlaku untuk sumber data. |
Keterangan
sp_pkeys mengembalikan informasi tentang kolom yang secara eksplisit ditentukan dengan batasan KUNCI PRIMER. Karena tidak semua sistem mendukung kunci primer bernama secara eksplisit, pelaksana gateway menentukan apa yang merupakan kunci primer. Perhatikan bahwa istilah kunci primer mengacu pada kunci primer logis untuk tabel. Diharapkan bahwa setiap kunci yang tercantum sebagai kunci primer logis memiliki indeks unik yang ditentukan di dalamnya. Indeks unik ini juga dikembalikan dalam sp_statistics.
Prosedur tersimpan sp_pkeys setara dengan SQLPrimaryKeys di ODBC. Hasil yang dikembalikan diurutkan berdasarkan TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, dan KEY_SEQ.
Izin
Memerlukan izin SELECT pada skema.
Contoh
Contoh berikut mengambil kunci primer untuk HumanResources.Department
tabel dalam AdventureWorks2022
database.
USE AdventureWorks2022;
GO
EXEC sp_pkeys @table_name = N'Department'
,@table_owner = N'HumanResources';
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
Contoh berikut mengambil kunci primer untuk DimAccount
tabel dalam AdventureWorksPDW2012
database. Ini mengembalikan baris nol yang menunjukkan bahwa tabel tidak memiliki kunci primer.
-- Uses AdventureWorksPDW
EXEC sp_pkeys @table_name = N'DimAccount';
Lihat Juga
Prosedur Tersimpan Katalog (Transact-SQL)
Prosedur Tersimpan Sistem (Transact-SQL)
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk