ADO.NET 中的数据类型映射
.NET Framework 基于用于定义如何在运行时声明、使用和管理类型的通用类型系统。 它由值类型和引用类型组成,这两种类型均派生自 Object 基类型。 使用数据源时,如果未显式指定数据类型,则从数据提供程序推断出它。 例如,DataSet 对象独立于任何特定的数据源。 DataSet 中的数据从数据源中进行检索,而更改则会通过使用 DataAdapter 持久保存回数据源。 这意味着当 DataAdapter 使用数据源中的值填充 DataSet 中的 DataTable 时,DataTable 中列的结果数据类型为 .NET Framework 类型,而不是特定于用于连接数据源的 .NET Framework 数据提供程序的类型。
同样,当 DataReader 返回数据源中的值时,生成的值将存储在具有 .NET Framework 类型的局部变量中。对于 DataAdapter 的 Fill 操作和 DataReader 的Get 方法,将从 .NET Framework 数据提供程序中返回的值来推断 .NET Framework 类型。
当所返回值的特定类型已知时,您可以使用 DataReader 的类型化访问器方法,而不是依靠推断出的数据类型。 类型化访问器方法以特定 .NET Framework 类型的形式返回值,无需再进行其他类型转换,因此会提高性能。
注意 |
---|
.NET Framework 数据提供程序的数据类型的 null 值都用 DBNull.Value 表示。 |
本节内容
SQL Server 数据类型映射 (ADO.NET)
列出针对 System.Data.SqlClient 的推断数据类型映射和数据访问器方法。OLE DB 数据类型映射 (ADO.NET)
列出针对 System.Data.OleDb 的推断数据类型映射和数据访问器方法。ODBC 数据类型映射 (ADO.NET)
列出针对 System.Data.Odbc 的推断数据类型映射和数据访问器方法。Oracle 数据类型映射
列出针对 System.Data.OracleClient 的推断数据类型映射和数据访问器方法。浮点数 (ADO.NET)
描述开发人员在使用浮点数时经常遇到的问题。