Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C OleDbDataReader不返回记录,但手动sql返回记录_C#_Sql_Oracle - Fatal编程技术网

C# C OleDbDataReader不返回记录,但手动sql返回记录

C# C OleDbDataReader不返回记录,但手动sql返回记录,c#,sql,oracle,C#,Sql,Oracle,我有以下资料: try { string u = "select count(*) from my_table"; OleDbCommand runu = new OleDbCommand(u, connection); OleDbDataReader readu = runu.ExecuteReader(); if (readu.HasRows

我有以下资料:

try
            {
                string u = "select count(*) from my_table";
                OleDbCommand runu = new OleDbCommand(u, connection);
                OleDbDataReader readu = runu.ExecuteReader();
                if (readu.HasRows)
                {
                    while (readu.Read())
                    {
                        exists = readu[0].ToString();
                    }
                    readu.Dispose();
                }
                connection.Close();
            }
            catch (Exception g)
            {
                OraLog.log(g.ToString());
            }
如果我抓取select语句并通过SQLDeveloper运行它,我将返回记录

我在其他事情上使用了相同的代码块,它工作得很好,但这一次……出于某种原因,它没有返回任何记录

我已断开与SQLDeveloper的连接并重新连接,并确保数据已提交

我也没有得到任何例外,我只是没有得到任何结果


谢谢,

我注意到的第一件事是缺乏联系。打开;,然后我注意到,当您只检索一个值时,您正在以Execute.Reader的形式运行这个

我做了一点重写,在尝试之前添加int RowCount,添加connection.Open,然后通过ExecuteScalar命令设置其值,该命令只返回查询中的第一个值。我还移动了连接。靠近最后一个街区

我没有使用您的“按原样存在”,因为它似乎应该是bool而不是字符串,您可以添加任何支持代码来处理RowCount值

int RowCount;
try {
    connection.Open();
    string u = "select count(*) from my_table";
    OleDbCommand runu = new OleDbCommand(u, connection);
    RowCount = (int)runu.ExecuteScalar();
}
catch (Exception g) { /* unchanged */ }
finally {  connection.Close(); }

如果命令失败,RowCount将等于null,对于表中的行数,则为0+整数。

连接是否打开?有例外吗?正在记录什么异常?你调试代码了吗?没有异常我调用了连接。打开后,我将其包装在一个try-catch中,但没有异常我不完全确定这是怎么回事……如果我获取命令并将粘贴复制到sqldev中,它就可以工作了。我将尝试此操作,并发布结果,谢谢大家。如果您仍然有问题,请告诉我,或者如果对您有效,请将其标记为已回答。将其标记为已回答可以帮助我发现它实际上没有提交……我将数据导入数据库,但从未运行提交。谢谢你的帮助