带SQL的execute.scalar并且where子句始终返回0

时间:2019-05-15 12:54:29

标签: c# oracle

当我尝试从oracle db读取许多记录时,我有一个奇怪的行为。我使用以下代码:

string sqlStatement = "select count(*) from EMP where code=1";
OleDbCommand chargeCount = new OleDbCommand(sqlStatement, conn);

if (chargeCount.Connection.State == ConnectionState.Open)
    chargeCount.Connection.Close();
else
    chargeCount.Connection.Open();

Console.WriteLine("No of records: {0}",
chargeCount.ExecuteScalar());

它始终返回0,但应返回100000(如我在SQLplus中收到上述SQL语句所收到的)。

如果将sql语句更改为“从EMP中选择count(*)”,则会收到正确的记录数。

好像我有一个错误。有人可以让我朝正确的方向前进吗?

0 个答案:

没有答案