Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Há algum benefício em usar sql_variant sobre varchar no SQL Server?


O bom da variante sql é que você pode armazenar vários tipos em uma coluna e manter as informações do tipo.

Se você deseja recuperar o tipo:
select SQL_VARIANT_PROPERTY ( value , 'BaseType' ) as DataType,* from mysettings

e você tem:
Datatype Name          Value
-----------------------------
varchar  Name          MyName
int      ShoesNumber   45
numeric  MyDouble      31.32

Infelizmente, isso tem várias desvantagens:
  1. não muito rápido
  2. não é bem suportado por estruturas ORM