
連載第5回
Oracle独自の“変更通知機能”で同時実行性を向上
日本オラクル
三谷 亮太
2007/8/10
オラクル社が提供する3つの.NET環境用開発ツール「ODP.NET」「ODT」「ODE.NET」。Oracle 10gリリース2に対応した最新版を使って、Oracleデータベースを前提とした.NETアプリケーションの開発手法を解説する。(編集部)
| 主な内容 --Page 1--
--Page 2--
--Page 3--
|
最終回となる今回は、Oracleデータベースの独自機能である行レベルの変更通知機能を活用します。データベース変更通知とは、SELECTを行ったオブジェクトの変更情報をイベントとして受け取る機能のことです。イベントはOracleCommandを通じて通知されます。
通常、排他制御を行う場合は以下のような手段が考えられます。
- SELECT時にはロックをかけず、更新時にほかの人が変更していないかチェックし、変更されていた場合はロールバックする
- SELECT時にロックをかけ、あらかじめほかの人が更新できないようにする
前者の場合はデータが変更されていると入力内容が無駄になる可能性があり、後者の場合は同時実行性が低くなるというデメリットがあります。変更通知機能を使うことでロックをかけず、変更された場合は即座にユーザーに通知することで修正の手間を軽減できます(図1)。
![]() |
| 図1 Oracleデータベースの行レベルの変更通知機能 |
図1では行番号(注1)を受け取っていますが、ほかにも以下のような情報を通知可能です。
- 変更されたオブジェクト名
- 変更されたオブジェクトのスキーマ名
- 通知を発生させるデータベース・イベント(挿入、更新、削除など)
| 注1:行番号(ROWID)の詳細については、オラクル社のドキュメントをご覧ください。 |
これまでの連載ではWebアプリケーションを中心に解説してきましたが、今回はWindowsアプリケーションで作成します。なお、Webアプリケーションで変更通知機能を使う場合はConnectionオブジェクトのインスタンスが稼働中に破棄されないよう、ライフサイクルに注意する必要があります。
[ファイル]メニューの[新しいプロジェクト]より[Windowsアプリケーション]を選択します(図2)。
![]() |
| 図2 Windowsアプリケーションの新規プロジェクト作成 |
作成したプロジェクトに「Oracle.DataAccess」の参照設定を追加します。これまでと同様、メニューの[プロジェクト]→[参照の追加]から「Oracle.DataAccess」を選択します。
| 1/3 |
| Index | |
| 連載:.NETユーザー必見! Oracle 10gのお作法(5) Oracle独自の“変更通知機能”で同時実行性を向上 |
|
| Page 1 ・変更通知機能とは? ・アプリケーションの作成 |
|
| Page 2 ・EMP表の表示・更新 |
|
| Page 3 ・変更通知を実装する ・変更通知のテスト |
|
| .NETユーザー必見! Oracle 10gのお作法 |
TechTargetジャパン
Database Expert フォーラム 新着記事
- IBMが歴史を変える!? 新カテゴリの製品を発表 (2012/5/25)
IBMは新たな製品カテゴリとなる「PureSystems」を発表。DB2 10とビッグデータの関係、PureSytemsの斬新さはどこかに迫ります - クラウド時代のデータ処理を支える分散KVSの可能性 (2012/5/23)
現在、高速データ処理の主流はインメモリ型データ処理だが、別の方法として分散KVSが注目を集めている。今回は分散KVSについて話を聞いた - 複数の表からデータを取り出して表示させる(2) (2012/4/23)
前回はSQLの基本的な結合構文について説明しました。今回は、より複雑な自己結合や外部結合について説明します - SQL Server、OOWにIQ、盛りだくさんの4月 (2012/4/20)
オラクルオープンワールドが3年ぶりに東京で開催されたほか、SQL Server 2012が提供開始されるなど、今月は話題が盛りだくさんです
|
|
@IT 新着記事
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
お勧め求人情報
転職/派遣情報を探す
**先週の人気講座ランキング**
〜 Android編 〜
ホワイトペーパー(TechTargetジャパン)
ソリューションFLASH


