如图:代码运行后提示在位置0处没有任何行,但是我将sql语句放到oracle查询却能查出数据的。求高手指点。

解决方案 »

  1.   

    你可以调试一下,应该是你的查询语句没有查找到符合条件的数据,所以返回的ds的行数为0,所以你用ds.Rows[0]的话肯定会报错的
      

  2.   

    你先看看ds里面是不是有数据,如果ds都是空的,怎么可能给datarow赋值呢。我一般赋值用的是ds.Tables.Add(dt);
      

  3.   

    加个判断,当ds不为null时,再赋值给q
      

  4.   

    这不是java,不能用问号。这么写拼不出条件,所以没有返回。
      

  5.   

    要么用sqlparameter,要么用string.format拼接
      

  6.   

    像这种取dataTable数据的一般都要加判断
    if(ds!=null && ds.rows.count>0)
    {
    //你的代码
    }