
Visual Studioを使用して上記赤枠のデータをDBから取得、表示、CSVへ書き込むまでを行います。
Postgreサーバーからデータの取得を試みたいと思います。
※データブロバイダーをインストールされていない方は、
C# Visual StadioからDBに接続してみた!!でDB接続の流れを紹介しています。
以下のようにソースを記述します。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;
using Npgsql;
namespace ConsoleApplication4
{
class Program
{
static void Main(string[] args)
{
//データを入れる変数を作成します。
string id = "";
string name = "";
//接続する為のインスタンスを生成します。
NpgsqlConnection conn = new NpgsqlConnection();
//DB接続情報を作成します。
conn.ConnectionString = @"Server=localhost;
Port=5432;
User Id=test;
Password=pass;
Database=test;";
try
{
// 接続します。
conn.Open();
Console.WriteLine("DBに接続しました。");
//SQL文を発行するクラスを生成します。
//第一引数にSQL文、第二引数に接続先を入力
NpgsqlCommand cmd = new NpgsqlCommand("SELECT * FROM TEST;", conn);
//クエリを実行します。
NpgsqlDataReader reader = cmd.ExecuteReader();
//データを出力するクラスを生成します。
//第一引数:出力パス\\ファイル名
//第二引数:false:上書き、true:追記
using (var sw = new System.IO.StreamWriter(@"C:\\csv\\test.csv", false))
//DBからデータを読み込む
while (reader.Read())
{
//DBからデータを取得
id = reader.GetValue(0).ToString();
name = reader.GetValue(1).ToString();
//コマンドラインに表示
Console.WriteLine("ID:" + id + "NAME:" + name);
//CSVに書き込む
sw.WriteLine(id + "," + name);
}
}
//例外処理
catch (Exception e)
{
Console.Write("エラーが発生しました。");
}
//必ず通る処理
finally
{ // 接続を解除します。
conn.Close();
Console.WriteLine("DBを閉じました。");
}
}
}
}
「Ctrl」 + 「F5」を押して実行!

コマンド画面に取得したデータが表示されました!!

csvフォルダの直下にtest.csvが作成されていることが確認できます!

test.csvを開くとDBから取得したデータが出力されています!!
最近のコメント