検索
連載

Oracleアプリだってコーディング量を減らしたい.NETでOracleアプリを作ろう(3)(4/4 ページ)

本記事では、Oracleが提供する.NETプラットフォーム開発向けのミドルウェアやツールを使って、.NET環境でOracleアプリケーション開発を効率的に行うためのノウハウを解説する。(編集部)

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

手順10

 コードでは、用意したemp_nameパラメータにTextBoxの値を代入する式を1つ付け加えます(リスト3の赤字部分)。SELECT用に用意されたOracleCommandオブジェクト(empVpdSelectOracleCommand1)のParametersプロパティを使用して、OracleParameterオブジェクトを獲得し、そのValueプロパティにTextBoxの値を入力します。

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

 コードの追加が終わりましたら、動作確認をしてみましょう。ビルドしてアプリケーションを開始します。社員名にKINGと入力して、「検索」ボタンをクリックします。KINGのデータが表示されることを確認してください(図21)。

図21 社員名での検索
 図21 社員名での検索
メモ:今回、SELECT文を構成する際、WHERE句は単純に「ename = :emp_name」としただけですので、社員名の大文字/小文字は区別され、完全一致するものしか表示されません。SELECT文にLIKE条件を使用したり、Oracleデータベースの全文検索機能(Oracle Text)を使用することでより柔軟な検索も可能となります。

DataGridの変更をデータベースに反映させる

 最後に、DataGridの変更をデータベースに反映させる機能を追加しましょう。といってもすでに、OracleDataAdapterウィザードでUPDATE用のOracleCommandは作成されているので、作業は非常に簡単です。フォームデザイナで「更新」ボタンをダブルクリックして、リスト4のように記述します。

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

(1)DataGridとDataSetはバインドされているので、DataGrid上での変更はDataSetに即反映されます。DataSetの変更をデータベースに反映させるために、OracleDataAdapterのUPDATEメソッドを使用します。UPDATEメソッドが実行されると、OracleDataAdapterのUpdateCommandプロパティにセットされているOracleCommandが実行されます。このUpdateCommand用のOracleCommandはOracleDataAdapterウィザードで自動的に作成されているため、特に記述する必要はありません。DataSetとDataTableを指定してOracleDataAdapterのUPDATEメソッドを実行するだけでDataSetの変更がデータベースに反映されます。

(2)UPDATE完了後、メッセージボックスを表示します。

 コーディングが終わったら、ビルドを行い、アプリケーションを開始して動作確認を行ってみましょう(図22)。

図22 DataGridの変更をデータベースに反映
図22 DataGridの変更をデータベースに反映

 以上で、データベースへアクセスするサンプル・アプリケーションの作成は終了です。ODT機能を活用することで、非常に少ないコーディングで、データの取得、絞り込み、更新が可能であることが分かったと思います。また、Oracleデータベース特有の機能もODP.NETを使用することで最大限引き出すことが可能です。今回はVPDとClientId連携をサンプルとして取り上げました。


 次回は、「Oracle Database 10g Release2」の新機能である「Oracle Database Extension for .NET」という.NETでOracleデータベースのストアドプロシージャを作成する機能について説明します。ご期待ください。


Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |