本文書はリレーショナルデータベースシステム(以下単にDB)アクセスを行うアプリケーションを作成するために、どのようにプログラミングすればよいかを身につけることを目的としています。対象DBはOracle Database、プラットフォームは.NETで言語はC#を用います。
本書では最も基本的なADO.NETのデータプロバイダーを用いたデータアクセスを対象とし、DataSetやTableAdapterを用いた非接続型アクセス、Entity Frameworkは対象外とします。
- C#を使った基本的なプログラミングが行える
- RDBMSの基本的な知識(DDL、DML等のSQL、トランザクション制御など)を理解している
- アプリケーションからDBへアクセスする際の、基本的な概念を理解する
- CRUD操作を行うSQLが発行できる
- SQLインジェクション脆弱性を排除するために、パラメーターを利用したコマンド発行ができる
- データプロバイダーの構成を理解し、適切に後処理が出来る
- DBアクセスに伴う例外処理が行える
- Windows 10 Pro 64bit
- Visual Studio 2017 Community
- Oracle Database 12c Release 1
- 2つの世界
まずはプログラムからDBにアクセスするというnはどういうことなのか、概念を理解していきましょう。 - データ プロバイダー
.NET Frameworkから世界をまたいでDBにアクセスするために必要なデータ プロバイダーの基本を学びましょう。 - DBに接続する
プログラムからDBに接続する手順について学びましょう。 - 単純な問い合わせ
最も基本的なSELECT文を実行する手順について学びましょう。 - スカラー値の取得
数量、件数と行った単一のスカラー値を取得する手順について学びましょう。 - 非問い合わせ
UPDATE、INSERT、DELETEといった非問い合わせSQL文を実行する手順について学びましょう。 - パラメーターの利用
パラメーターを用いたSQL文を実行する手順について学びましょう。 - ストアド・プロシージャ
ストアド・プロシージャを呼び出す手順について学びましょう。 - トランザクション管理
DBアクセス時のトランザクションを管理する方法について学びましょう。 - 例外処理
DBアクセスに伴う例外処理について学びましょう。 - O/Rマッパーの利用
SQL実行処理の煩雑さを緩和してくれる、O/Rマッパーの使い方を学びましょう。
各章のサンプルコードは、srcフォルダーの下にある章番号フォルダーの中にあります。リポジトリをクローンするか、zipファイル等でダウンロードして展開後、Visual Studioでソリューションを開いて内容を確認してください。
実行子する際は、各プロジェクト内のApp.configファイルの以下の部分のHOST、PORT、SERVICE_NAME等を、各自の環境に合わせて変更してください。
<!-- (4) -->
<oracle.manageddataaccess.client>
<version number="*">
<dataSources>
<!-- (5) -->
<dataSource alias="ORCL"
descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hostname)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) "/>
</dataSources>
</version>
</oracle.manageddataaccess.client>また、本サンプルはOracle Databaseのサンプル・スキーマ「SCOTT」を前提にしています。Oracle Database 12c Release 1であれば、インストール時に「システム・クラス」で「サーバー・クラス」を選び、その後「構成オプションの指定」でサンプルスキーマを作成するよう指定してください。
- .NET Framework データ プロバイダー
- OTN Japan - 初心者向け講座 : はじめてのODP.NETアプリケーション開発
- Insider.NET > ADO.NET基礎講座 - @IT
- .NETの例外処理 Part.2 | とあるコンサルタントのつぶやき
- ADO.NETとORMとMicro-ORM -dapper dot netを使ってみた
この 作品 は クリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンス の下に提供されています。

