Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analitik Platform Sistemi (PDW)
Microsoft Fabric'te SQL veritabanı
Temel veri türünü ve sql_variant değeri hakkındaki diğer bilgileri döndürür.
Transact-SQL söz dizimi kuralları
Syntax
SQL_VARIANT_PROPERTY ( expression , property )
Note
Bu söz dizimi, Azure Synapse Analytics'teki sunucusuz SQL havuzu tarafından desteklenmez.
Arguments
expression
sql_variant türünde bir ifadedir.
property
Bilgilerin sağlandığı sql_variant özelliğinin adını içerir.
özelliğivarchar(128) şeklindedir ve aşağıdaki değerlerden herhangi biri olabilir:
| Value | Description | Döndürülen sql_variant temel türü |
|---|---|---|
| BaseType | SQL Server veri türü, örneğin: 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 = Giriş geçerli değil. |
| Precision | Sayısal temel veri türünün basamak sayısı: tarih = 10 tarih saati = 23 datetime2 = 27 datetime2 (s) = 19 s = 0, aksi takdirde s + 20 datetimeoffset = 34 datetimeoffset (s) = 26 s = 0, aksi takdirde s + 27 smalldatetime = 16 zaman = 16 zaman (s) = 8 olduğunda s = 0, aksi takdirde s + 9 float = 53 gerçek = 24 ondalık ve sayısal = 18 ondalık (p,s) ve sayısal (p,s) = p para = 19 smallmoney = 10 bigint = 19 int = 10 küçük int = 5 tinyint = 3 bit = 1 Diğer tüm türler = 0 |
int NULL = Giriş geçerli değil. |
| Scale | Sayısal temel veri türünün ondalık noktasının sağındaki basamak sayısı: ondalık ve sayısal = 0 ondalık (p,s) ve sayısal (p,s) = s para ve küçük para = 4 tarih saati = 3 datetime2 = 7 datetime2 (s) = s (0 - 7) datetimeoffset = 7 datetimeoffset (s) = s (0 - 7) zaman = 7 zaman (s) = s (0 - 7) diğer tüm türler = 0 |
int NULL = Giriş geçerli değil. |
| TotalBytes | Değerin hem meta verilerini hem de verilerini tutmak için gereken bayt sayısı. Bu bilgiler, sql_variant bir sütundaki verilerin en büyük tarafını denetlemede yararlı olabilir. Değer 900'den büyükse dizin oluşturma işlemi başarısız olur. |
int NULL = Giriş geçerli değil. |
| Collation | Belirli bir sql_variant değerinin harmanlamasını temsil eder. |
sysname NULL = Giriş geçerli değil. |
| MaxLength | Bayt cinsinden en fazla veri türü uzunluğu. Örneğin, nvarchar(50)değerinin MaxLength değeri 100, Int'in MaxLength değeri 4'tür. |
int NULL = Giriş geçerli değil. |
Dönüş Türleri
sql_variant
Examples
A. Tabloda sql_variant kullanma
Aşağıdaki örnek, ve türünde SQL_VARIANT_PROPERTY olduğu düşünüldüğünde colA46279.1 değeri hakkında colB =1689tableAcolA bilgi alır.sql_variantcolB
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
Sonuç kümesi aşağıdadır. Bu üç değerin her birinin bir sql_variantolduğunu unutmayın.
Base Type Precision Scale
--------- --------- -----
decimal 8 2
(1 row(s) affected)
B. Değişken olarak sql_variant kullanma
Aşağıdaki örnek adlı SQL_VARIANT_PROPERTYbir değişken hakkında bilgi alır@v1.
DECLARE @v1 sql_variant;
SET @v1 = 'ABC';
SELECT @v1;
SELECT SQL_VARIANT_PROPERTY(@v1, 'BaseType');
SELECT SQL_VARIANT_PROPERTY(@v1, 'MaxLength');