PostgreSQL ADO.NET 開発ガイド - Winform アプリ
この記事では、Microsoft Visual Studio 2022 で Windows Forms App を作成するガイドを提供します。CData ADO.NET Provider for PostgreSQL を使用して、選択した PostgreSQL テーブルからデータを読み込んで表示するフォームを作成します。
注意: この記事では PostgreSQL データを使用していますが、同じ手法は CData がサポートする270以上のデータソースに適用できます。
前提条件
このガイドでは、以下が必要です:
- Visual Studio 2022
- .NET Framework 4.7.2
- CData ADO.NET Provider for PostgreSQL
- サンプル PostgreSQL データベース
ガイド
-
アプリケーションの作成
-
Visual Studio を開き、「Windows Forms App (.NET Framework)」プロジェクトを新規作成します。
-
プロジェクト名を「WindowsFormsAppPostgreSQL」にします。これにより、このガイドからコードをコピー&ペーストした場合に名前空間が一致します。設定したら「作成」をクリックします。
-
Visual Studio を開き、「Windows Forms App (.NET Framework)」プロジェクトを新規作成します。
-
必要なアセンブリへの参照を追加
- インストールディレクトリの lib サブフォルダ(例:「C:\Program Files\CData\CData ADO.NET Provider for PostgreSQL 2024\lib」)にある System.Data.CData.PostgreSQL.dll への参照を追加します。
-
プロジェクトをビルドしてセットアップを完了します。
-
フォームの名前変更とコントロールの追加
-
ソリューションエクスプローラーで Form1.cs を右クリックし、名前の変更を選択して ConnectForm.cs に変更します。
-
フォームデザインを開き、サーバーエクスプローラーの左側にある「ツールボックス」から、DataGridView、TextBox、Button をフォームに追加します。
-
追加したコントロールの Name プロパティを調整します:
- TextBox を選択し、Name プロパティを「txtTables」に設定
- Button を選択し、Name プロパティを「btnConnect」に設定
- DataGridView を選択し、Name プロパティを「dataGridView」に設定
-
-
ConnectForm.cs にコードを追加
-
ファイルを右クリックして「コードの表示」を選択し、フォームのコードを開きます。
-
PostgreSQL データに接続するために、名前空間の先頭で「System.Data.CData.PostgreSQL」を追加して参照します:
using System.Data.CData.PostgreSQL; ... -
最初に追加するコードスニペットは「ConnectForm」クラスのコンストラクタです。「this.btnConnect.Click += new System.EventHandler(this.btnConnect_Click);」を使用して、btnConnect ボタンのクリックイベントを btnConnect_Click イベントハンドラに動的に関連付けます。これにより、ボタンがクリックされるたびに btnConnect_Click メソッドが実行されます。また、フォームに合わせて ConnectForm のテキストを「Connect」に更新します:
public ConnectForm() { InitializeComponent(); // btnConnect のクリックイベントをここでサブスクライブ this.btnConnect.Click += new System.EventHandler(this.btnConnect_Click); this.Text = "Connect"; } -
2番目のコードスニペットでは、イベントハンドラ「btnConnect_Click」を定義します。このコードは TextBox に入力されたテーブル名を取得し、そのテーブルに接続するための接続文字列を設定します。次に、接続文字列を使用して選択した PostgreSQL テーブルからデータを読み込み、DataGridView に表示します:
private void btnConnect_Click(object sender, EventArgs e) { string selecttable = txtTables.Text; string connectionString = $"Authscheme=Password;Server=YourServer;Port=YourPort;User=YourUser;Password=YourPassword;Database=YourDatabase;Tables={selecttable}"; try { using (PostgreSQLConnection connection = new PostgreSQLConnection(connectionString)) { PostgreSQLCommand command = new PostgreSQLCommand($"SELECT * FROM {selecttable}", connection); PostgreSQLDataAdapter adapter = new PostgreSQLDataAdapter(command); DataTable table = new DataTable(); adapter.Fill(table); dataGridView.DataSource = table; } } catch (Exception ex) { MessageBox.Show($"Error loading data: {ex.Message}"); } }注意: 接続文字列のプレースホルダープロパティは、実際の PostgreSQL 接続プロパティに置き換えてください。
-
ファイルを右クリックして「コードの表示」を選択し、フォームのコードを開きます。
-
アプリケーションの実行
すべての設定が完了したら、選択した PostgreSQL テーブルからデータを読み込んで表示するアプリケーションを実行できます。まずソリューションをビルドし、緑色の再生ボタンでアプリケーションを起動します。アプリケーションが開いたら、以下のようにテーブル名を入力してデータを表示できます:
.NET アプリケーションでシームレスなデータ接続を実現
PostgreSQL データの可能性を最大限に引き出したいとお考えですか?CData PostgreSQL ADO.NET Provider を使えば、.NET アプリケーションと PostgreSQL データをシームレスに統合できます。CData ADO.NET Provider for PostgreSQL コミュニティライセンスでは、個人の .NET プロジェクトでデータにアクセスするための永久無料ライブラリを、使い慣れた SQL で利用できます。ライセンスをリクエストして、今すぐ PostgreSQL 連携アプリの構築を始めましょう!