ADO.NET 中的数据类型映射

.NET Framework 基于用于定义如何在运行时声明、使用和管理类型的通用类型系统。 它由值类型和引用类型组成,这两种类型均派生自 Object 基类型。 使用数据源时,如果未显式指定数据类型,则从数据提供程序推断出它。 例如,DataSet 对象独立于任何特定的数据源。 DataSet 中的数据从数据源中进行检索,而更改则会使用 DataAdapter 持久保存回数据源。 这意味着当 DataAdapter 使用数据源中的值填充 DataSet 中的 DataTable 时,DataTable 中列的结果数据类型为 .NET Framework 类型,而不是用于连接数据源的特定于 .NET Framework 数据提供程序的类型。

同样,当 DataReader 从数据源返回值时,生成的值将存储在具有 .NET Framework 类型的局部变量中。 对于 DataAdapterFill 操作和 DataReaderGet 方法,都将从 .NET Framework 数据提供程序返回的值来推断 .NET Framework 类型。

当所返回值的特定类型已知时,可以使用 DataReader 的类型化访问器方法,而不是依靠推断出的数据类型。 类型化访问器方法无需进行额外的类型转换,即可将值作为特定的 .NET Framework 类型返回,从而提供更好的性能。

备注

.NET Framework 数据提供程序数据类型的 null 值都用 DBNull.Value 表示。

本节内容

SQL Server 数据类型映射
列出针对 System.Data.SqlClient 的推断数据类型映射和数据访问器方法。

OLE DB 数据类型映射
列出针对 System.Data.OleDb 的推断数据类型映射和数据访问器方法。

ODBC 数据类型映射
列出针对 System.Data.Odbc 的推断数据类型映射和数据访问器方法。

Oracle 数据类型映射
列出针对 System.Data.OracleClient 的推断数据类型映射和数据访问器方法。

浮点数
描述开发人员在使用浮点数时经常遇到的问题。

另请参阅