C#でPostgreSQLデータベースにアクセスしてみる。

C# コンピュータ
C#

PostgresSQLで稼働しているデータベースがありまして、アクセス権を頂戴しましたので、試しにC#でアクセスしてみたいと思います。

プロジェクトの作成

mkdir プロジェクト名
cd プロジェクト名
dotnet new console
dotnet add package npgsql

プロジェクトファイルを覗いてみるとパッケージが追加されていることが確認できました。

  <ItemGroup>
    <PackageReference Include="npgsql" Version="6.0.0" />
  </ItemGroup>

サンプルプログラム

using System;
using Npgsql;

namespace posgre01
{
    class Program
    {
        static void Main(string[] args)
        {
            var connectionString = "Server=サーバー;"
            + "Port=ポート;"
            + "User Id=ユーザーID;"
            + "Password=パスワード;"
            + "Database=データベース名;";

            using(var conn = new NpgsqlConnection(connectionString))
            {
                conn.Open(); // 接続

                using(var cmd = new NpgsqlCommand())
                {
                    cmd.Connection = conn;
                    cmd.CommandText = "SQL文";

                    using(var line = cmd.ExecuteReader())
                    {
                        while(line.Read())
                        {
                            Console.WriteLine("{0}", line["項目名"]);
                        }
                    }
                }                
            }
        }
    }
}

データベースに接続しテーブルから指定の項目の値を取得するSQL文を実行し、最後のレコードまで読み込むサンプルになります。
接続文字列やSQL、項目名は実行環境に合わせて変更してください。

コメント