C#・DB/データアクセス関連

【C#】DataTable ~ 基本編 ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/10415992.html の続き。 今回は、「基本的な使い方」「使用上の注意」をまとめる ■ 基本的な使い方 データを追加するには... var dataTable = new DataTable(); dataTable.Columns.Add("ID", typeof(string))…

【C#】【Linq】DataTable ~ DataTable で Linq する ~

■ DataTable で Linq する dataTable.AsEnumerable().Where(x => x. ...) で行う 補足 * 以下の関連記事でも使用している https://blogs.yahoo.co.jp/dk521123/37979233.html ■ サンプル using System; using System.Data; using System.Windows.Forms; name…

【C#】DataTable ~ 重複を気にせずカウントするには... ~

■ はじめに https://blogs.yahoo.co.jp/dk521123/14321146.html の続き。 今回は、重複を気にせずカウントすることを考える ■ ポイント * DataTable Compute()メソッドを使って、求める ■ サンプル ・・・ DataSet ds = new DataSet(); DataTable dt = new D…

【C#】Transaction ~トランザクションを使用するには~

■ トランザクションを使用するには * 参照設定を右クリックし[参照の追加]-[.NET]で「System.Transactions」を選択する * 「using System.Transactions;」を追加する ■ サンプル using System.Transactions; // 中略 private void button1_Click(object send…

【C#】【SQL Server】SqlBulkCopy ~高速に大量データを挿入するには~

■ 用途 * SQL Serverのテーブルにデータを一括で読み込むことができる * しかも高速で。パフォーマンス向上に役立つ。(詳細は以下を参照のこと) http://d.hatena.ne.jp/re_guzy/20060108/p1 http://www.moonmile.net/blog/archives/2234 ■ 欠点 * 書き込み…

【C#】DataTable ~ あれこれ編 ~

■ 一時的に制約を外したい * DataTable.BeginLoadData および DataTable.EndLoadData メソッドを利用する サンプル public void Xxxx(DataTable table) { try { // 制約を一旦外す table.BeginLoadData(); // 更新処理 } catch (Exception ex) { // 例外対応…

【C#】【ACCESS】ユーザから選択されたACCESSファイル(.mdb)を使う

■ サンプル * ACCESSファイルのデータをCSVファイルに変換する DataSet namespace Tool001.Data.PersonDataSetTableAdapters { public partial class PersonTableAdapter { public string ConnectionString { get { return this.Connection.ConnectionString…

【C#】【ACCESS】ACCESSデータベースを使う

■ ACCESSデータベースを使う https://blogs.yahoo.co.jp/dk521123/18975082.html の前準備を行うこと * App.ConfigからConnectionStringを取得するために、 参照の追加の[.Net]-[System.Configuration]を追加する必要がある (詳細は、参考資料を参考のこと) …

【C#】DataTable ~ データテーブルのソート ~

■ データテーブルのソート サンプル #region データテーブルのソート /// <summary> /// データテーブルdataTableを、sortで、ソートする /// </summary> /// <param name="dataTable">データテーブル</param> /// <param name="sort">ソート条件</param> /// <returns>sortedDataTable:ソート済のデータテーブル</returns> private DataTable SortDataTable(Da…

【C#】DataTable ~ DISTINCT / 重複した値を省くには... ~

■ はじめに DataTable の Comput()メソッドでは、「Distinct」や「GROUP BY」を使用することができない。 DataTableでの重複した値を省くには、方法について考える 【1】DataView の ToTable メソッドを使う * DataView.ToTable (true, "項目1", "項目2"...…

【C#】DataTable ~ 基礎知識編 ~

■ DataSet / DataTable / TableAdapter DataSetクラス データベースに対応 データセットとは データを一時的にローカルのメモリ内に格納できるデータ テーブルを含むオブジェクト 【利点】 いちいちデータベースにアクセスする必要がないので、パフォーマン…