Mapeamentos de tipos de dados do SQL Server
O SQL Server e o .NET Framework baseiam-se em diferentes sistemas de tipo. Por exemplo, a estrutura Decimal do .NET Framework tem uma escala máxima de 28, enquanto os tipos de dados decimais e numéricos do SQL Server têm uma escala máximo de 38. Para manter a integridade dos dados ao ler e gravar dados, o SqlDataReader expõe métodos acessadores tipados específicos do SQL Server que retornam objetos de System.Data.SqlTypes, bem como métodos acessadores que retornam tipos do .NET Framework. Os tipos do SQL Server e do .NET Framework também são representados por enumerações nas classes DbType e SqlDbType, que você pode usar ao especificar tipos de dados SqlParameter.
A tabela a seguir mostra o tipo de .NET Framework inferido, as enumerações de DbType e SqlDbType e os métodos acessadores de SqlDataReader.
1 Não é possível definir a propriedade DbType
de um SqlParameter
como SqlDbType.Date
.
2 Use um acessador tipado específico se você souber o tipo subjacente de sql_variant
.
documentação do SQL Server
Para obter mais informações sobre tipos de dados do SQL Server, confira Tipos de dados (Transact-SQL).