Mappages de types de données SQL Server
SQL Server et le .NET Framework sont basés sur des systèmes de types différents. Par exemple, la structure Decimal du .NET Framework a une échelle maximale de 28, tandis que l'échelle maximale des types de données décimal et numérique de SQL Server est de 38. Pour préserver l'intégrité des données lors des opérations de lecture et d'écriture, le SqlDataReader expose des méthodes d'accesseur typé spécifiques à SQL Server qui retournent des objets de System.Data.SqlTypes, ainsi que des méthodes d'accesseur qui retournent des types .NET Framework. Les types SQL Server et les types .NET Framework sont également représentés par des énumérations dans les classes DbType et SqlDbType, que vous pouvez utiliser pour spécifier des types de données SqlParameter.
La table suivante indique le type de .NET Framework déduit, les énumérations de DbType et de SqlDbType, ainsi que les méthodes d’accesseurs pour SqlDataReader.
1 Vous ne pouvez pas définir la propriété DbType
d’un SqlParameter
sur SqlDbType.Date
.
2 Utilisez un accesseur typé spécifique si vous connaissez le type sous-jacent de sql_variant
.
documentation SQL Server
Pour plus d’informations sur les types de données SQL Server, consultez Types de données (Transact-SQL).