mo *_*laz 2 c# datatable ms-access
我试图使用数据适配器获取表的总行数,但我的行计数总是返回1.当我使用阅读器时,我得到准确的数字.我想使用dataAdapter.
这是我的代码:
public double GetRowNumber()
{
using (OleDbConnection con = new OleDbConnection(someConnectionString))
{
con.Open();
String cmdString = "SELECT COUNT (*) FROM " + "[" + Table +"]"
OleDbDataAdapter db = new OleDbDataAdapter(cmdString, dbConn);
DataTable dt = new DataTable();
db.Fill(dt);
return dt.Rows.Count;
}
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
您的函数将始终返回1,因为
SELECT COUNT (*) FROM "
Run Code Online (Sandbox Code Playgroud)
语句将用1条记录,计数数填充你的数据表.
如果要使用行计数
con.Open();
String cmdString = "SELECT COUNT (*) FROM " + "[" + Table +"]"
OleDbCommand cmd = new OleDbCommand();
cmd.Text = cmdString ;
cmd.Connection = con;
int count = Convert.ToInt32(cmd.ExecuteScalar());
Run Code Online (Sandbox Code Playgroud)
更快捷,更轻松,满足您的需求.您不必使用像datatable这样的对象.