ODP.NETのデータアクセス・チューニング:ODP.NETファーストステップ(3)(4/4 ページ)
Windowsプラットフォームにおけるアプリケーション開発は、.NETが主流となりつつある。本連載はVisual Basicから.NETへの移行を考えているOracleアプリケーション開発者に向けて、「Oracle Data Provider for .NET」を使うメリットや独自機能、新しいプログラミング・スタイルなどを解説する。(編集局)
非接続型でのデータアクセスの注意点
非接続型でのデータアクセスは、Datasetオブジェクトを使用して結果セットを取得します。その際に、次のOracleデータ型は関連する.NET型に変換される際にデータが失われる可能性があります。これを防ぐために、ODP.NETのOracleDataAdapterでは安全な型マッピング機能が提供されています。
- NUMBER
- DATE
- TimeStamp(すべてのTimeStampオブジェクトを意味する)
- INTERVAL DAY TO SECOND
例えば以下のようなコードを実行した場合に、安全な型マッピング機能を使用しないとエラーが発生します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
上記のコードを実行すると、以下のエラーが発生します。
このようなエラーを回避するには、以下のようにコードを変更します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
以上のようにOracleDataAdapterのSafeMappingプロパティを使用して安全な型マッピングを行うことが可能です。上記のコードではSafeMappingプロパティの指定に「*」を指定し、すべてのフィールドをマッピングしていますが、フィールド名を指定してマッピングすることも可能です。SafeMappingプロパティの詳細については、OTNの「Oracle Data Provider for .NET開発者ガイド」にて詳細に説明してありますので、そちらを参照してください。
今回はODP.NETからOracleデータベースへのデータアクセスについて説明しました。次回はOracleデータベース上に実装されたネイティブXMLデータベース機能「Oracle XML DB」をODP.NETから使用する方法について説明します。どうぞご期待ください。(次回へ続く)
Copyright © ITmedia, Inc. All Rights Reserved.