sql >> Databáze >  >> RDS >> Sqlserver

Existují nějaké výhody použití sql_variant přes varchar v SQL Server?

Dobrá věc na variantě sql je, že můžete uložit několik typů do sloupce a zachovat informace o typu.

Pokud chcete získat typ:

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

a máte:

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

Bohužel to má několik nevýhod:

  1. není příliš rychlé
  2. není dobře podporováno rámci ORM


  1. Podivné chování při castingu v mysql

  2. oracle systimestamp (sysdate) na milisekundy

  3. Zápis datového rámce do tabulky MySql DB

  4. MySql cursors.execute() pouze s jedním parametrem:Proč je řetězec rozdělen do seznamu?