アプリケーションはデータベースにアクセスし、データを表示するようになりました。ただ、実際の開発では、データを絞り込んだり、複雑なクエリが必要となることも多いかと思います。その際にOracleDataAdapterウィザードを用いることで、OracleDataAdapterやOracleCommandの変更を行うことが可能です。
今回は、OraleDataAdapterウィザードを使って、TextBoxに入力された社員を検索するように変更をしてみましょう。
すでに作成されているOracleDataAdapterを右クリックし、「DataAdapterを構成...」をクリックします。OracleDataAdapterウィザードが起動します。「次へ」をクリックします(図13)。
OracleConnectionを構成します。今回は、ドラッグ&ドロップですでに作成されているDataAdapterに対して再構成をしている状態ですので、接続の情報などはすでに指定されています。このまま「次へ」をクリックします(図14)。
SELECT文のタイプを指定します。今回はストアドプロシージャやPL/SQLではなくSELECT文の変更を行いますので、「SQL SELECT文を作成」を選択して、「次へ」をクリックします(図15)。
SELECT文を記述します。Oracleエクスプローラから表を選択してドラッグ&ドロップした場合、「SELECT * FROM <表名>」というSELECT文がすでに記述されているはずです。社員名による検索を行うために、パラメータを1つ用意して、そのパラメータを組み込む形でSELECT文を記述する必要があります。まずはパラメータを追加するために「パラメータ...」ボタンをクリックします(図16)。
図17のようにパラメータの設定を行います。設定が終わったら「OK」ボタンをクリックします。
パラメータの詳細 | 値 |
---|---|
名前 | emp_name |
方向 | Input |
タイプ | OracleDbType.Varchar2 |
パラメータ・バインド | 名前ごと |
パラメータの準備が終わると、「SELECT文を構成」の画面に戻りますので、作成したemp_nameパラメータを使って、リスト2のようにSELECT文を書き換えます。
SELECT * FROM emp_vpd WHERE ename = :emp_name |
リスト2 WHERE句の追加 |
SELECTのための設定が終わると、INSERT、UPDATE、DELETEのための設定に移ります。「自動」が選択されていることを確認して「次へ」をクリックします(図18)。
設定のサマリーが表示されます。確認後、問題がなければ「終了」をクリックします(図19)。
OracleConnectionの再作成が行われますので、パスワードの保存を確認するダイアログが表示されます。ここでは「はい」をクリックします。これで、OracleConnection、OracleCommand、OracleDataAdapterの再作成が終了します(図20)。
Copyright © ITmedia, Inc. All Rights Reserved.