ADO.NET でのデータ型のマッピング

更新 : November 2007

.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 の特定の型として値を返すと、追加の型変換が不要になるため、パフォーマンスが向上します。

4e5xt97a.alert_note(ja-jp,VS.90).gifメモ :

.NET Framework データ プロバイダのデータ型の null 値は、DBNull.Value で表現されます。

このセクションの内容

参照

概念

パラメータおよびパラメータのデータ型の構成 (ADO.NET)

その他の技術情報

SQL Server データ型と ADO.NET

データベース スキーマ情報の取得 (ADO.NET)

共通型システム

型の変換