SQL_VARIANT_PROPERTY (Transact-SQL)
Temel veri türü ve diğer bilgileri verir ve ilgili bir sql_variant Değer.
SQL_VARIANT_PROPERTY ( expression , property )
Bağımsız değişkenler
expression
Bir ifade türünde mi sql_variant.property
Contains the name of the sql_variant property for which information is to be provided.property is varchar(128), and can be any one of the following values.Değer
Açıklama
Temel türü sql_variant döndürdü
BaseType
SQL Server verileri, gibi yazın:
bigint
binary
char
date
datetime
datetime2
datetimeoffset
decimal
float
int
money
nchar
numeric
nvarchar
real
smalldatetime
smallint
smallmoney
time
tinyint
uniqueidentifier
varbinary
varchar
sysname
NULL = girdi geçerli değil.
duyarlık
Sayısal bir temel veri türü basamak sayısı:
datetime = 23
smalldatetime = 16
float = 53
real = 24
decimal (p, s) ve numeric (p, s) = p
money = 19
smallmoney = 10
bigint = 19
int = 10
smallint = 5
tinyint = 3
bit = 1
Diğer türleri = 0
int
NULL = girdi geçerli değil.
Ölçek
Sayısal bir temel veri türü, ondalık virgülün sağındaki basamak sayısı:
decimal (p, s) ve numeric (p, s) = s
money ve smallmoney = 4
datetime = 3
diğer türleri = 0
int
NULL = girdi geçerli değil.
ToplamlBayt
Meta veriler de veri değeri saklamak için gerekli olan bayt sayısı.Bu bilgileri en çok yan veri denetimi yararlı olacaktır bir sql_variant sütun. Değer 900 ' büyükse, dizin oluşturma başarısız olur.
int
NULL = girdi geçerli değil.
Harmanlama
Harmanlama belli temsil eder. sql_variant Değer.
sysname
NULL = girdi geçerli değil.
MaxLength
En büyük veri uzunluğu bayt cinsinden yazın.Örneğin, MaxLength of nvarchar(50) 100, MaxLength of int 4'tür.
int
NULL = girdi geçerli değil.
Dönüş Türleri
sql_variant
Örnekler
Aşağıdaki örnek alır. SQL_VARIANT_PROPERTY bilgi colA Değer 46279.1 burada colB =1689, koşuluyla, tableA vardır colA tür olmasıdır. sql_variant ve 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
Here is the result set. Bu üç değerleri unutmayın bir sql_variant.
Base Type Precision Scale
--------- --------- -----
decimal 8 2
(1 row(s) affected)