検索
連載

ODP.NETのデータアクセス・チューニングODP.NETファーストステップ(3)(4/4 ページ)

Windowsプラットフォームにおけるアプリケーション開発は、.NETが主流となりつつある。本連載はVisual Basicから.NETへの移行を考えているOracleアプリケーション開発者に向けて、「Oracle Data Provider for .NET」を使うメリットや独自機能、新しいプログラミング・スタイルなどを解説する。(編集局)

PC用表示 関連情報
Share
Tweet
LINE
Hatena
前のページへ |       

非接続型でのデータアクセスの注意点

 非接続型でのデータアクセスは、Datasetオブジェクトを使用して結果セットを取得します。その際に、次のOracleデータ型は関連する.NET型に変換される際にデータが失われる可能性があります。これを防ぐために、ODP.NETのOracleDataAdapterでは安全な型マッピング機能が提供されています。

  • NUMBER
  • DATE
  • TimeStamp(すべてのTimeStampオブジェクトを意味する)
  • INTERVAL DAY TO SECOND

 例えば以下のようなコードを実行した場合に、安全な型マッピング機能を使用しないとエラーが発生します。

*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***

 上記のコードを実行すると、以下のエラーが発生します。

図3 型変換エラーによるエラー発生画面
図3 型変換エラーによるエラー発生画面

 このようなエラーを回避するには、以下のようにコードを変更します。

*** 一部省略されたコンテンツがあります。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.

前のページへ |       
ページトップに戻る