【C#】データテーブルの件数取得と件数チェックをする【DataTable】

2020年2月10日

データテーブルの行数を取得する

データテーブルに格納された行数を取得するには「dt.Rows.Count」とすることで

現在の行の件数が取得できます。

ここでは、行の件数をコンソールに出力しています。


    // データテーブルの初期化
    DataTable dt = new DataTable();

    // データテーブルの名前を指定
    dt.TableName = "FRUIT";

    // 列追加
    dt.Columns.Add("HINMEI");
    dt.Columns.Add("SURYO");
    dt.Columns.Add("TANKA");
    dt.Columns.Add("KINGAKU");
    // 行追加
    dt.Rows.Add("りんご", "3", "50", "150");
    dt.Rows.Add("ぶどう", "1", "200", "200");
    dt.Rows.Add("みかん", "10", "30", "300");

    /* 
      今回の内容はここから
    */ 
    // 行の件数を取得する
    Console.WriteLine(dt.Rows.Count);
    
    // ログ出力内容
    // 3


行の件数チェックを行う

条件式を使用し、件数チェックをしていきます。

1つ目は、データテーブルに格納されたデータが 0 件かを判断する条件式

2つ目は、データテーブルに格納されたデータが 1 件以上かを判断する条件式


    // データテーブルの初期化
    DataTable dt = new DataTable();

    // データテーブルの名前を指定
    dt.TableName = "FRUIT";

    // 列追加
    dt.Columns.Add("HINMEI");
    dt.Columns.Add("SURYO");
    dt.Columns.Add("TANKA");
    dt.Columns.Add("KINGAKU");
    // 行追加
    dt.Rows.Add("りんご", "3", "50", "150");
    dt.Rows.Add("ぶどう", "1", "200", "200");
    dt.Rows.Add("みかん", "10", "30", "300");

    /* 
      今回の内容はここから
    */ 
    // データテーブルに格納されたデータが 0 件かを判断する条件式
    if (dt.Rows.Count == 0)
    {
        Console.WriteLine("格納されたデータはありません");
    }

    // データテーブルに格納されたデータが 1 件以上かを判断する条件式
    if (dt.Rows.Count > 0)
    {
        Console.WriteLine("格納されたデータがあります。");
    }


コピペですぐ試せるソースコード

上記で記載した2点のソースコードをまとめました。

ソースコードをコピペするとそれぞれの動作が確認できると思います。


        private void DataTable_Row_Count()
        {
            DataTable dt = new DataTable();

            // データテーブルの名前を指定
            dt.TableName = "FRUIT";

            // 列追加
            dt.Columns.Add("HINMEI");
            dt.Columns.Add("SURYO");
            dt.Columns.Add("TANKA");
            dt.Columns.Add("KINGAKU");

            // 行追加
            dt.Rows.Add("りんご", "3", "50", "150");
            dt.Rows.Add("ぶどう", "1", "200", "200");
            dt.Rows.Add("みかん", "10", "30", "300");

            /* 
              今回の内容はここから
            */ 
            // 行の件数を取得する
            Console.WriteLine(dt.Rows.Count);

            // データテーブルに格納されたデータが 0 件かを判断する条件式
            if (dt.Rows.Count == 0)
            {
                Console.WriteLine("格納されたデータはありません");
            }

            // データテーブルに格納されたデータが 1 件以上かを判断する条件式
            if (dt.Rows.Count > 0)
            {
                Console.WriteLine("格納されたデータがあります。");
            }

        }


まとめ

データテーブルの件数チェックは例外エラーを回避する際に

必要となってくるので覚えておくといいかとおもいます。

用途にあったやり方、自分のやりやすい実装を採用していきましょう。


Microsoft 公式ページ

DataRowCollection.Count プロパティ
https://docs.microsoft.com/ja-jp/dotnet/api/system.data.datarowcollection.count?view=netframework-4.8