KKboy199
KKboy199
2018-02-05 05:40
采纳率: 100%
浏览 6.1k

C# 执行查询语句报错There is no row at position 1.

C# 执行查询语句报错There is no row at position 1.

                                           string SQLZ = "SELECT PROCESS_ID,PDLINE_ID,MACHINE_ID,SHIFT_ID,WORK_DATE FROM  TEST_B  WHERE MANHOUR_ID = '"+manhour_id+"' AND ENABLED='Y'";

                                            DataTable dsTemp_S1 = DBhelp.ExecuteSQL(SQLZ).Tables[0];
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

8条回答 默认 最新

  • showbo
    已采纳

    不是这句报错吧。。你这个只是取返回的Table,没有和数据行相关。。报这个错应该是你使用的返回表格的Rows属性时报错,Table没有数据行或者只有1行导致的错误

    如没有数据或者只有1行,直接dsTemp_S1.Rows[1][0].ToString()获取数据就是报的这个错误

    点赞 评论
  • asd501664923
    asd501664923 2018-02-05 06:10

    不是这句报错吧。。你这个只是取返回的Table,没有和数据行相关。。报这个错应该是你使用的返回表格的Rows属性时报错,Table没有数据行或者只有1行导致的错误

    点赞 评论
  • cwy303
    cwy303 2018-02-05 06:23

    明显是返回的datatable没内容。

    点赞 评论
  • ronyan1234
    ronyan1234 2018-02-05 06:27

    是取返回的Table,没有和数据行相关

    点赞 评论
  • wenwh33bk
    wenwh33bk 2018-02-05 06:41

    楼上说得对,这个不是报错。这条提示信息要你给出position 1的相应的数据,如果这里没数据,那就会出现这个常态性的警示信息。

    点赞 评论
  • qq_35206244
    jerryzhou; 2018-02-05 07:10

    可以试试用dataGrid控件,自动绑定,多简单?搞清楚了,再自己写自定义的表,不就简单多了。
    这是我用dataGrid控件和sqlServer绑定的一个实例,1W4行的数据,也能秒差,性能还是可以的。
    图片说明

    使用dataGrid,实现与数据库的数据绑定,显示

      public void display()
            {
                url = "server=.;database='register';uid='sa';pwd='sa'";
                connect = new SqlConnection(url);
                connect.Open();
                comboboxtext = comboBox1.Text;//选择表      
                command = "select * from " + comboboxtext;
                adapter = new SqlDataAdapter(command, connect);//
                tables = new DataSet();
                adapter.Fill(tables, comboboxtext);//在dataset中添加行
                dataGridView1.DataSource = tables;//获取显示数据的数据源
                dataGridView1.DataMember = comboboxtext;//显示数据列、表名称
                connect.Close();
            }
    
    点赞 评论
  • yinhuajian2000
    yinhuajian2000 2018-02-05 07:21

    调试的时候看下这个sql具体内容是什么,复制下来,手动执行这条sql,看看是否有记录返回呢

    点赞 评论
  • romanticcrystal
    romanticcrystal 2018-02-11 07:29

    如果数据集是dataset ,先判断dataset中的表数量是否大于0
    如果大于0
    再判断table
    行数据要判断是否为空

    点赞 评论

相关推荐