Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistem Platform Analitik (PDW)
Database SQL di Microsoft Fabric
Mengembalikan jenis data dasar dan informasi lain tentang nilai sql_variant .
Syntax
SQL_VARIANT_PROPERTY ( expression , property )
Note
Sintaks ini tidak didukung oleh kumpulan SQL tanpa server di Azure Synapse Analytics.
Arguments
expression
Adalah ekspresi jenis sql_variant.
property
Berisi nama properti sql_variant yang informasinya akan disediakan.
properti adalah varchar(128), dan bisa menjadi salah satu nilai berikut:
| Value | Description | Jenis dasar sql_variant dikembalikan |
|---|---|---|
| BaseType | Jenis data SQL Server, seperti: bigint binary bit char date datetime datetime2 datetimeoffset decimal float int money nchar numeric nvarchar real smalldatetime smallint smallmoney time tinyint uniqueidentifier varbinary varchar |
sysname NULL = Input tidak valid. |
| Precision | Jumlah digit tipe data dasar numerik: tanggal = 10 tanggalwaktu = 23 tanggalwaktu2 = 27 datetime2 (s) = 19 ketika s = 0, atau s + 20 tanggalwaktuoffset = 34 datetimeoffset (s) = 26 saat s = 0, atau s + 27 smalldatetime = 16 waktu = 16 time (s) = 8 bila s = 0, else s + 9 mengambang = 53 nyata = 24 desimal dan numerik = 18 desimal (p,s) dan numerik (p,s) = p uang = 19 uang kecil = 10 bigint = 19 int = 10 smallint = 5 tinyint = 3 bit = 1 Semua jenis lainnya = 0 |
int NULL = Input tidak valid. |
| Scale | Jumlah digit di sebelah kanan titik desimal dari jenis data dasar numerik: desimal dan numerik = 0 desimal (p,s) dan numerik (p,s) = s uang dan smallmoney = 4 tanggalwaktu = 3 tanggalwaktu2 = 7 tanggalwaktu2 (dtk) = dtk (0 - 7) tanggalwaktuoffset = 7 datetimeoffset (s) = s (0 - 7) waktu = 7 waktu (s) = s (0 - 7) semua jenis lainnya = 0 |
int NULL = Input tidak valid. |
| TotalBytes | Jumlah byte yang diperlukan untuk menyimpan metadata dan data nilai. Informasi ini akan berguna dalam memeriksa sisi maksimum data dalam kolom sql_variant . Jika nilainya lebih besar dari 900, pembuatan indeks akan gagal. |
int NULL = Input tidak valid. |
| Collation | Mewakili kolaterasi nilai sql_variant tertentu. |
sysname NULL = Input tidak valid. |
| MaxLength | Panjang jenis data maksimum, dalam byte. Misalnya, MaxLength dari nvarchar(50) adalah 100, MaxLength dari int adalah 4. |
int NULL = Input tidak valid. |
Jenis Kembalian
sql_variant
Examples
A. Menggunakan sql_variant dalam tabel
Contoh berikut mengambil SQL_VARIANT_PROPERTY informasi tentang colA nilai 46279.1 di manacolB =1689 , mengingat yang tableA memiliki colA jenis sql_variant dan .colB
CREATE TABLE tableA(colA sql_variant, colB int)
INSERT INTO tableA values ( cast (46279.1 as decimal(8,2)), 1689)
SELECT SQL_VARIANT_PROPERTY(colA,'BaseType') AS 'Base Type',
SQL_VARIANT_PROPERTY(colA,'Precision') AS 'Precision',
SQL_VARIANT_PROPERTY(colA,'Scale') AS 'Scale'
FROM tableA
WHERE colB = 1689
Berikut set hasilnya. Perhatikan bahwa masing-masing dari ketiga nilai ini adalah sql_variant.
Base Type Precision Scale
--------- --------- -----
decimal 8 2
(1 row(s) affected)
B. Menggunakan sql_variant sebagai variabel
Contoh berikut mengambil SQL_VARIANT_PROPERTY informasi tentang variabel bernama @v1.
DECLARE @v1 sql_variant;
SET @v1 = 'ABC';
SELECT @v1;
SELECT SQL_VARIANT_PROPERTY(@v1, 'BaseType');
SELECT SQL_VARIANT_PROPERTY(@v1, 'MaxLength');