OracleDataReader只返回一行

MaM*_*aMu 5 c# oracle visual-studio

我正在尝试循环游标.当我在pl/sql中直接执行命令(表示为sql - 见下文)时,我得到的结果集包含更多行.但是当我运行这段代码时,我只得到一行:

using (OracleConnection conn = new OracleConnection(connstring))
{
    conn.Open();
    string sql = "select close, ts from dpr@price where qot_id=2029543939 and ts>='" + start + "' and  ts<='" + end + "'";
    using (OracleCommand comm = new OracleCommand(sql, conn))
    {
        using (OracleDataReader rdr = comm.ExecuteReader())
        {
             while (rdr.Read())
             {                                
                  Console.WriteLine(rdr.GetOracleDecimal(0));
             }

         }
     }
}
Run Code Online (Sandbox Code Playgroud)

代码不会抛出任何异常(至少不是以通常的方式;我的意思是它不会停止或写入堆栈跟踪).但是我可以在调试时通过reader Object看到这些行(我不认为它在这里是相关的,但显示输出"以防万一"):

InitialLONGFetchSize = 'rdr.InitialLONGFetchSize' threw an exception of type 'System.NullReferenceException' 

InitialLOBFetchSize = 'rdr.InitialLOBFetchSize' threw an exception of type 'System.NullReferenceException'
Run Code Online (Sandbox Code Playgroud)

结果应该只有类型DateTimeNumber (10,4).并且该表没有类型为lob或long的字段.

这是表格方案:

QOT_ID    NUMBER
TS            DATE
CLOSE     NUMBER
OPEN      NUMBER
HIGH      NUMBER
LOW       NUMBER
KASSE     NUMBER
VOLUME    NUMBER
CLOSE_BID     NUMBER
SPL_BEREINIGT VARCHAR2
OPEN_INTEREST NUMBER
TRADES    NUMBER
TURNOVER      NUMBER
HIGH_BID      NUMBER
LOW_ASK   NUMBER
Run Code Online (Sandbox Code Playgroud)

查询正确且条目存在.返回的行似乎是随机的......它不是第一行或最后一行.我正在使用ODT和ODAC 11.我有VS2012并在Windows 7(32位)下工作.我已连接到Oracle 10g.

有什么线索我做错了什么?