からデータを取得します返された実際の数値を取得しますか?私の現在のメソッドは、DataTable
の行の数を返します。デフォルトでは常に1になります。Count()
を返す必要があります。ここでは、私は、クエリは、私はどのように行う、私はSQL Serverに接続して、このクエリを実行するために<code>C#</code>を使用していますが、私の問題がある</p> <pre><code>Select Count(numstudents) from classA </code></pre> <p>でカウントを返しますSQLクエリを実行していたDataTable
がいっぱいですC#
構文:
private void GetData()
{
DataSet ds = new DataSet()
using (var con = new SqlConnection(connectionString))
{
using (var cmd = new SqlCommand("RunAStoredProc", con))
{
using (var da = new SqlDataAdapter(cmd))
{
cmd.CommandType = CommandType.StoredProcedure;
da.Fill(ds);
}
}
}
DataTable table1 = new DataTable();
table1 = ds.Tables[0];
DataTable table2 = new DataTable();
table2 = ds.Tables[1];
string numberreturned = table1.Rows.Count.ToString();
Console.WriteLine(numberreturned);
Console.ReadKey();
}
ストアード・プロシージャーなどのように読み取ります
Alter Procedure [dbo].[GetData]
As
Select Count(*) FROM classA
Select studentfirstname, studentlastname FROM classA
Where enrolled = 'Yes'
を書くことができ、私は実際には2つの選択ステートメント(なぜ私はSqlDataAdapterオブジェクトを使用しています)を返すのです - 私は(構文が正しく取得することはできません)最初の選択からのカウントを必要と私は繰り返しますds.Tables [1]のデータ。 –
ストアドプロシージャのコードを追加できますか?これがカウントクエリの場合は、データセットの1番目または2番目のテーブルに1つの行だけが存在します。その場合、2番目の例では、classAの生徒数を取得するには十分でなければなりません(最初の表に格納されている場合) – Steve
SQL構文を表示するように更新されたオリジナル投稿。 –