sp_special_columns_100 (Azure Synapse Analytics)
Berlaku untuk:
Azure Synapse Analytics Analytics
Platform System (PDW)
Mengembalikan kumpulan kolom optimal yang secara unik mengidentifikasi baris dalam tabel. Juga mengembalikan kolom yang diperbarui secara otomatis saat nilai apa pun dalam baris diperbarui oleh transaksi.
Konvensi Sintaks Transact-SQL (Transact-SQL)
Sintaks
-- Syntax for Azure Synapse Analytics and Parallel Data Warehouse
sp_special_columns_100 [ @table_name = ] 'table_name'
[ , [ @table_owner = ] 'table_owner' ]
[ , [ @qualifier = ] 'qualifier' ]
[ , [ @col_type = ] 'col_type' ]
[ , [ @scope = ] 'scope' ]
[ , [ @nullable = ] 'nullable' ]
[ , [ @ODBCVer = ] 'ODBCVer' ]
[ ; ]
Catatan
Sintaks ini tidak didukung oleh kumpulan SQL tanpa server di Azure Synapse Analytics.
Argumen
[ @table_name=] 'table_name'
Adalah nama tabel yang digunakan untuk mengembalikan informasi katalog. nama adalah sysname, tanpa default. Pencocokan pola kartubebas tidak didukung.
[ @table_owner=] 'table_owner'
Adalah pemilik tabel tabel yang digunakan untuk mengembalikan informasi katalog. 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 nama yang ditentukan yang dimiliki oleh pemilik database. Jika tabel ada, kolomnya akan dikembalikan.
[ @qualifier=] 'kualifikasi'
Adalah nama kualifikasi tabel. 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.
[ @col_type=] 'col_type'
Adalah jenis kolom. col_type adalah karakter(1), dengan default R. Tipe R mengembalikan kolom optimal atau kumpulan kolom yang, dengan mengambil nilai dari kolom atau kolom, memungkinkan baris apa pun dalam tabel yang ditentukan diidentifikasi secara unik. Kolom dapat berupa pseudocolumn yang dirancang khusus untuk tujuan ini, atau kolom atau kolom indeks unik apa pun untuk tabel. Jenis V mengembalikan kolom atau kolom dalam tabel yang ditentukan, jika ada, yang secara otomatis diperbarui oleh sumber data saat nilai apa pun dalam baris diperbarui oleh transaksi apa pun.
[ @scope=] 'cakupan'
Adalah cakupan minimum yang diperlukan dari ROWID. cakupan adalah karakter(1), dengan default T. Cakupan C menentukan bahwa ROWID hanya valid saat diposisikan pada baris tersebut. Cakupan T menentukan bahwa ROWID valid untuk transaksi.
[ @nullable=] 'nullable'
Apakah kolom khusus dapat menerima nilai null. nullable adalah char(1), dengan default U. O menentukan kolom khusus yang tidak mengizinkan nilai null. U menentukan kolom yang sebagian dapat diubah ke null.
[ @ODBCVer=] 'ODBCVer'
Apakah versi ODBC sedang digunakan. ODBCVer adalah int(4), dengan default 2. Ini menunjukkan ODBC versi 2.0. Untuk informasi selengkapnya tentang perbedaan antara ODBC versi 2.0 dan ODBC versi 3.0, lihat spesifikasi ODBC SQLSpecialColumns untuk ODBC versi 3.0.
Mengembalikan Nilai Kode
Tidak ada
Tataan Hasil
| Nama kolom | Jenis data | Deskripsi |
|---|---|---|
| LINGKUP | smallint | Cakupan aktual ID baris. Bisa 0, 1, atau 2. SQL Server selalu mengembalikan 0. Bidang ini selalu mengembalikan nilai. 0 = SQL_SCOPE_CURROW. ID baris dijamin hanya valid saat diposisikan pada baris tersebut. Pilih kembali nanti menggunakan ID baris mungkin tidak mengembalikan baris jika baris diperbarui atau dihapus oleh transaksi lain. 1 = SQL_SCOPE_TRANSACTION. ID baris dijamin berlaku selama durasi transaksi saat ini. 2 = SQL_SCOPE_SESSION. ID baris dijamin berlaku selama durasi sesi (di seluruh batas transaksi). |
| COLUMN_NAME | nama sysname | Nama kolom untuk setiap kolom tabel yang dikembalikan. Bidang ini selalu mengembalikan nilai. |
| DATA_TYPE | smallint | Jenis data ODBC SQL. |
| TYPE_NAME | nama sysname | Nama jenis data yang bergantung pada sumber data; misalnya, karakter, varchar, uang, atau teks. |
| PRESISI | Int | Presisi kolom pada sumber data. Bidang ini selalu mengembalikan nilai. |
| LENGTH | Int | Panjang, dalam byte, diperlukan untuk jenis data dalam bentuk binernya di sumber data, misalnya, 10 untuk char(10), 4 untuk bilangan bulat, dan 2 untuk smallint. |
| SKALA | smallint | Skala kolom pada sumber data. NULL dikembalikan untuk jenis data yang skalanya tidak berlaku. |
| PSEUDO_COLUMN | smallint | Menunjukkan apakah kolom adalah pseudocolumn. SQL Server selalu mengembalikan 1: 0 = SQL_PC_UNKNOWN 1 = SQL_PC_NOT_PSEUDO 2 = SQL_PC_PSEUDO |
Keterangan
sp_special_columns setara dengan SQLSpecialColumns di ODBC. Hasil yang dikembalikan diurutkan berdasarkan CAKUPAN.
Izin
Memerlukan izin SELECT pada skema.
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
Contoh berikut mengembalikan informasi tentang kolom yang secara unik mengidentifikasi baris dalam FactFinance tabel.
-- Uses AdventureWorks
EXEC sp_special_columns_100 @table_name = 'FactFinance';