从 datareader 获取聚合函数 count() 的值
Get a value of aggregate function count() from datareader
用 C# 编码,我的查询是,
query = "select COUNT(*) as rowsCount from employee_leaves where PARTY_ID ='10'";
执行后,
OracleDataReader dr = command.ExecuteReader();
我现在如何才能将计数输入 int
我从数据库中得到的 table 有 1 行包含 3 as,
我试过了,int i = dr["rowsCount"];
还有这个,int i = dr.GetInt32(0);
但没有成功。
假设您使用 C# 编写代码。请在 dr.Read()
之前使用(它应该 return 为真),然后使用 dr 从第一行读取值。
因为只需要取一个值,所以使用ExecuteScalar()
。例子
string sqlQuery = "select COUNT(*) as rowsCount from employee_leaves where PARTY_ID ='10'";
OracleCommand command = new OracleCommand(sqlQuery, connection);
// other codes here such as opening the connection
int count = Convert.ToInt32(command.ExecuteScalar());
用 C# 编码,我的查询是,
query = "select COUNT(*) as rowsCount from employee_leaves where PARTY_ID ='10'";
执行后,
OracleDataReader dr = command.ExecuteReader();
我现在如何才能将计数输入 int
我从数据库中得到的 table 有 1 行包含 3 as,
我试过了,int i = dr["rowsCount"];
还有这个,int i = dr.GetInt32(0);
但没有成功。
假设您使用 C# 编写代码。请在 dr.Read()
之前使用(它应该 return 为真),然后使用 dr 从第一行读取值。
因为只需要取一个值,所以使用ExecuteScalar()
。例子
string sqlQuery = "select COUNT(*) as rowsCount from employee_leaves where PARTY_ID ='10'";
OracleCommand command = new OracleCommand(sqlQuery, connection);
// other codes here such as opening the connection
int count = Convert.ToInt32(command.ExecuteScalar());