なべひろBlog

プログラミングをメインに仕事に関するアレコレを発信しています。

Npgsql

C#でNpgsqlを使ってPostgreSQLへアクセス【NpgsqlDataAdapterでSELECT】

今まではクエリ文を実行後、データを1個ずつ取得していましたがNpgsqlDataAdapterとDataTableを利用し、まとめてデータを取得する方法の解説です。 速度的には遅いんじゃ?と予想される方も多いかと思います。 私も遅いと予想していますが、今時なPCで耐えれ…

C#でNpgsqlを使ってPostgreSQLへアクセス【Prepare】

NpgsqlのPrepareメソッドに関して検索しても...出てこないw と言う事で色々調べならが実際効果があるのか考察してみたいと思います。 もくじ はじめに ベンチマークテスト 普通にSELECT文をループする WHEREの条件をパラメータとして与えてSELECT NpgsqlComm…

C#でNpgsqlを使ってPostgreSQLへアクセス【Transaction】

トランザクションはあまり多くの説明は必要としないかと思われますのでサクッとやってしまいます。 どちらかと言えばロールバックが発生した後の処理をどうするかが悩ましい所かもしれません。 私の作成するサンプルソースファイルは 今回のサンプルソースは…

C#でNpgsqlを使ってPostgreSQLへアクセス【SELECT】

もくじ はじめに 基本的なSELECT データベーステーブルのn番目のカラムデータを取得 SELECTのn番目のカラムデータを取得 NpgsqlCommand.FieldCountでカラム数を参照 DbDataReader.GetValueで取得 型を明確にして取得 時刻データを取得してみる 浮動小数点 配…

C#でNpgsqlを使ってPostgreSQLへアクセス【INSERT】

はじめに まずはデーテベーステーブルにデータを入れなければ話は始まりません。 と言う事で3つのINSERT手法を解説したいと思います。 尚、以下のサンプルコードを基に記述したのにビルドエラーが出る場合は「using System.Data;」が抜けている可能性があり…

C#でNpgsqlを使ってPostgreSQLへアクセス【RANGEパーティションのあるテーブル作成】

はじめに 今回は範囲を指定したパーティションテーブルの作成を行います。 範囲といえば蓄積した値ごとや年ごとの値に振り分けるなどがあります。 年ごとに関しては別の手法も併せて紹介したいと思います。 Npgsqlの本家情報は 私の作成するサンプルソースフ…

C#でNpgsqlを使ってPostgreSQLへアクセス【LISTパーティションのあるテーブル作成】

はじめに データベースに慣れている方なら特に問題はないと思いますが、ついでにPostgreSQLのバージョン10から使えるようになった宣言的パーティションの手法も含め解説したいと思います。 宣言的パーティションとは1つのテーブルを条件に則った形で分割する…

C#でNpgsqlを使ってPostgreSQLへアクセス【テーブル作成の基礎】

はじめに 接続ができたら次はデータベーステーブルを作成してみます。 バージョン10から使えるようになった宣言的パーティションを含めて解説しようかと思いましたが思いほのか文字数が多くなり分かりにくくなる可能性もあるのでまずは基礎的な手法の説明を…

C#でNpgsqlを使ってPostgreSQLへアクセス【接続する】

はじめに 2020年初めにEntityFrameworkを使ったPostgreSQLへアクセスする記事を書きましたが、その後も幾つかEntityFrameworkを用いたアプリを作る中で不満点も出てしまい、昔のようにクエリを直に書いたほうが自分的には分かりやすくクエリのテクニックもC#…