web-dev-qa-db-ja.com

C#でSQLテーブルの行数を数える方法は?

C#でSQLテーブルの行数を数える方法は?データベースからデータを抽出する必要があります...

7
Eyalse

あなたはこのように試すことができます:

select count(*) from tablename where columname = 'values'

C#コードは次のようになります。

public int A()
{
   string stmt = "SELECT COUNT(*) FROM dbo.tablename";
   int count = 0;

   using(SqlConnection thisConnection = new SqlConnection("Data Source=DATASOURCE"))
   {
       using(SqlCommand cmdCount = new SqlCommand(stmt, thisConnection))
       {
           thisConnection.Open();
           count = (int)cmdCount.ExecuteScalar();
       }
   }
   return count;
}
28
Rahul Tripathi

最初にc#からデータベース接続を行う必要があります。次に、以下のクエリをcommandTextとして渡す必要があります。

Select count(*) from TableName

返されたカウントを取得するには、ExecuteScalar/ExecuteReaderを使用します。

4
sateesh

これが好きですか?

SELECT COUNT(*) 
FROM yourTable 
WHERE ....
3
zey

いつでも使えるグローバル機能を作ることができます

    public static int GetTableCount(string tablename, string connStr = null)
    {
        string stmt = string.Format("SELECT COUNT(*) FROM {0}", tablename);
        if (String.IsNullOrEmpty(connStr))
            connStr = ConnectionString;
        int count = 0;
        try
        {

            using (SqlConnection thisConnection = new SqlConnection(connStr))
            {
                using (SqlCommand cmdCount = new SqlCommand(stmt, thisConnection))
                {
                    thisConnection.Open();
                    count = (int)cmdCount.ExecuteScalar();
                }
            }
            return count;
        }
        catch (Exception ex)
        {
            VDBLogger.LogError(ex);
            return 0;
        }
    }
1
David Fawzy

これは私のために働く

using (var context = new BloggingContext())
{
   var blogs = context.Blogs.SqlQuery("SELECT * FROM dbo.Blogs").ToList();
}

詳細については、以下を参照してください。 https://docs.Microsoft.com/es-es/ef/ef6/querying/raw-sql?redirectedfrom=MSDN

0
FelixAVeras