Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Y a-t-il des avantages à utiliser sql_variant sur varchar dans SQL Server ?

La bonne chose à propos de sql variant est que vous pouvez stocker plusieurs types dans une colonne et que vous conservez les informations de type.

Si vous souhaitez récupérer le type :

select SQL_VARIANT_PROPERTY ( value , 'BaseType' ) as DataType,* from mysettings

et vous avez :

Datatype Name          Value
-----------------------------
varchar  Name          MyName
int      ShoesNumber   45
numeric  MyDouble      31.32

Malheureusement, cela présente plusieurs inconvénients :

  1. pas très rapide
  2. pas bien pris en charge par les frameworks ORM