本記事では、Oracleが提供する.NETプラットフォーム開発向けのミドルウェアやツールを使って、.NET環境でOracleアプリケーション開発を効率的に行うためのノウハウを解説する。(編集部)
前回「これがODT+VS.NETの開発スタイルだ」に引き続き、今回もサンプルのアプリケーションを作成していきます。前回は、アプリケーションの作成に入る前のデータベースの設定をVisual Studio .NET(以下、VS.NET)から行いました。今回はいよいよサンプル・アプリケーションをOracle Developer Tools for Visual Studio .NET(以下、ODT)の機能を使用して作成します。
今回は、前回でVirtual Private Database(以下、VPD)の設定を行った表にアクセスするアプリケーションを作成します。VPDのアクセス制御を使用するために、Oracle Data Provider for .NET(以下、ODP.NET)10.2の新機能であるClientIdプロパティも使用します。
VPDの設定がされていない場合、この設定は無視されますが、アプリケーションは動作します。前回で行ったデータベースの設定がなくとも、今回紹介するアプリケーションは動作しますので、「まずOracleアプリケーションを作ってみたい」という方は本記事を参考にアプリケーションを作成することも可能です。
まず、以下のようなフォームを作成します(図1)。ここは通常のVS.NETによるアプリケーション作成と変わりません。
ODTの自動コード生成機能では、OracleDataAdapterを使用した非接続型でのデータアクセスのコードを生成します。非接続型データアクセスや接続型データアクセスに関する情報はすでに多く存在しますので、ここでの解説は省きますが、非接続型データアクセスのオブジェクト・モデルについては、簡単に説明しておきます(図2)。
非接続型データアクセスで作成する必要のある主なオブジェクトは、OracleConnection、OracleCommand、OracleDataAdapterそしてDataSetです。これらは、それぞれ関連性を持たせて作成する必要があります。また、OracleCommandは必要に応じて、SELECT用、INSERT用、UPDATE用、DELETE用のものを作成する必要があります。ODTの自動コード生成では、これらのオブジェクトを自動的に生成します。それでは、ODTを使用してこれらのオブジェクトを作成していきます。
Oracleエクスプローラより、表示させたい表(今回はEMP_VPD)をドラッグして、用意したフォームの上にドロップします(図3)。
OracleConnectionを自動的に生成する際に、ConnectionStringプロパティにパスワードを含めるかどうかの確認ダイアログが出ます。今回は「はい」を選択します(図4)。
これにより、必要なオブジェクトが作成されます。OracleConnectionとOracleDataAdapterについては、コンポーネントアイコンとしてフォームデザイナの下部に表示されています(図5)。また、コードを見てみると、INSERT、UPDATE、DELETE用のOracleCommandや多数のOracleParameterが自動的に作成されていることが確認できます(図6)。これらがODTの自動コード生成機能になります。
ここで作成されたオブジェクトに変更を加える必要がある場合は、直接コードに修正を加えるのではなく、OracleDataAdapterウィザードを使用して行います。OracleDataAdapterウィザードについては、後述します。(次ページへ続く)
Copyright © ITmedia, Inc. All Rights Reserved.