■VB.Netによる開発(準備)

 VB.NetでPostgreSQLにアクセスするプログラムを作ってみます。
 まずはデータベースへの接続のみ行います。
 VBのバージョンは2010です。

 ●準備
  Npgsqlを使って接続します。 Npgsql で検索して下さい。
  日本語のプロジェクトのホームページがあるのでダウンロード
  本家のページに飛ぶのでそこからファイルをダウンロードします。
  ・フレームワーク別になっています。
 VB2010で4.0を使用するのでNpgsql-2.1.3-net40.zip(2014/08/17の段階)を使用します。

 ダウンロード後、解凍します。
 必要なファイルは
 ・Npgsql.dll
 ・Npgsql.resources.dll(jaフォルダに入っている物です)
 ・Mono.Security.dll
 以上の3つのファイルが必要になります。

●作成
 VBで新規のプロジェクトを作成。全てを保存します。
 先ほど解凍した3つのファイルをプロジェクトのフォルダにコピーします。
 VBのプロジェクトのプロパティ、参照タブで追加ボタンをクリックします。
 参照の追加ダイアログが出るので参照タブでNpgsql.dll、Npgsql.resources.dllを追加します。
 追加するとインポートされた名前空間にNpgsql、NpgsqlTypesが追加されるのでチェックを入れます。

 フォームにボタンを1つ追加し、ボタンをクリックすると接続、切断を行うようにして見ます。
 以下ソース

        Dim cn As New NpgsqlConnection 'コネクション
        '### 接続設定 ###
        cn.ConnectionString = "Server=[サーバのIPアドレス];Port=[接続に使用するポート];User Id=[ユーザー];Password=[パスワード];Database=[接続するDB名];"

        '### 処理開始 ###
        Try
            '--- 接続 ---
            cn.Open()
            MessageBox.Show("接続しました。")
            '--- 切断 ---
            cn.Close()
            MessageBox.Show("切断しました。")
        Catch ex As Exception
            MessageBox.Show("接続又は切断に失敗しました" & ex.Message)
        End Try

 接続、切断のみなのでソースは少ないです。
 ただし開発・接続テストの意味合いも強いのでまず接続が成功するかを試すと良いです。

 上手く行かない場合は
 ・接続設定を見直す
 ・Windowsファイヤーウォール等サーバとの接続が出来るか
 ・Npgsql.dll、Npgsql.resources.dll、Mono.Security.dllがDebug又はReleaseフォルダにコピーされているか
 等確認します。

 Npgsqlで作成したアプリケーションはDLLも一緒にコピーすると他のパソコンでも動きました。
 VB.Netなので.Net framework は必要になりますが他に必要な物が無いのは良いですね


トップへ戻る