本帖最后由 heihaozi 于 2009-12-20 18:39:59 编辑

解决方案 »

  1.   

    da.Fill(ds, "sb");//问题在这句话
    首先说明这句代码的意思:是把数据存于ds中的一张表里,表明为这个"ds"。
    因为你帮定的数据源是jt.DataSource = ds;
    jt.DataBind();
    ds是dataset,所以不管你这个表明改成什么名字对程序都不会有任何影响。
      

  2.   

    我从来不用DataSet、DataTable,我只是使用强类型的对象集合。不过回答你的问题,其实很简单,你自己去看看 System.Data.Common.DbDataAdapter 类的这个方法
    public int Fill(DataSet dataSet, string srcTable)的定义,srcTable只是给DataTable取个名字。可是人家根本不需要表名字,人家只对ds中第一个DataTable进行绑定,根本不管名字。
      

  3.   

    不是因为绑定的ds就不需要管名字,因为即使直接绑定DataTable那么人家也根本不管你取什么名字。
      

  4.   

    DbDataAdapter.Fill  (DataSet, String)
    在 DataSet 中添加或刷新行以匹配使用 DataSet 和 DataTable 名称的数据源中的行
    DataSet 包含多个 DataTable 对象,而这些对象的名称只有大小写不同.Fill 执行区分大小写的比较以查找相应的表,如果不存在完全匹配的表,则新建一个
      

  5.   

    SP1234大大的话总是发人深醒,回家睡床上叼之烟,反映半天拍拍脑袋,X,原来如此,明天送根烟去.