ODP.NETを使ってデータ取得(VisualStudio2010)

VisualStudio2010からOracleに接続してみよう!

Oracleに接続する方法はいくつか存在するようです。
その中でもODP.NETという便利なものを使うと簡単に接続できるようです。
VisualStudio2010とOracleを仲介してくれるようなイメージでしょうか(ミドルウェア)

最低限の準備物
・Oracleが動いてるサーバ
・VisualStudio2010がインストールされたマシン
・ODP.NET(Oracle Data Provider for .NET)のインストール

ODP.NETのインストール
VisualStudio2010がインストールされているマシンにODP.NETもインストールしないといけません。
Oracleのホームページで無償でダウンロードできます。(ユーザー登録は必要です。)
http://www.oracle.com/technology/global/jp/software/tech/windows/odpnet/index.html




Oracle ClientとODP.NET両方のインストールが必要だと思ってましたが、ODP.NETのインストールだけでいいみたいです。
インストールするとVisualStudio2010の画面にOracleの文字がそちこちに追加されてます。

ツールボックスにはこんなものが


メニューにはこんなものが

何かとVisualStudio2010に影響を与えるということですね。


Oracleに接続する所から考えてみよう
ODP.NETの機能を使うためにとりあえず最初に

'----------
Imports Oracle.DataAccess.Client
'----------

でインポートしてやらないと関連する命令使えません。
次に接続部分だけ書いてみます。

'----------
'データベースへの接続を開く
Dim con As New OracleConnection
con.ConnectionString = "User Id=ユーザー名 ;Password=パスワード ;Data Source=サーバ名/データベース名 ;"  
con.Open()
'----------

Oracleで事前に作成しているユーザ名とパスワード。さらに接続先とデータベース名を指定してやります。
これで接続の準備ができます。
Oracleからデータ取得してみよう
上までで接続準備までできてるのであとはSQL発行してやればデータ取得できます。
今回は「テスト」というテーブルからデータを取得して、データテーブルに突っ込んでやってます。
最後に使ったものはちゃんとポイッってことでDisposeしてあげます。
データテーブル以外でも適切なとこには突っ込めるみたいですけどよくわかりません。

'データの取得
Dim cmd As New OracleCommand
cmd.Connection = con
cmd.CommandText = "select * from テスト"
'DaraSetの作成
Dim da As New OracleDataAdapter(cmd)
Dim ds As New DataTable
da.Fill(ds)
'データベースへの接続を閉じる
cmd.Dispose()
con.Dispose()
DataGridViewに取得したデータを表示させてみる

せっかくデータ取得したのに目に見えないと楽しくないですよね。
とりあえずDataGridViewをひとつ置きましょう。

'-----------------
Me.DataGridView1.DataSource = ds
'-----------------

これだけです。
取得したデータがDataGridviewに表示されます。
なんだか複雑そうなところが実は簡単にできたりしちゃって???ってなりますね。