这是不可能的,大概是你第一次用的是ds中的表device,而第二次的代码是da.Fill(ds,"anothertable"),然后你用的时候还是如下代码,ds.Tables["device"]如何如何,那肯定结果是不会变的

解决方案 »

  1.   

    要清空
    就用
    ds.Clear();
    就可以了
      

  2.   

    public override DataSet ExecSqlForDataSet(string strQuery)
    {
       try
       {
              OleDbCommand cmd = new OleDbCommand();
     cmd.Connection = m_Conn;
     DataSet ds = new DataSet();
     OleDbDataAdapter adp = new OleDbDataAdapter();
     cmd.CommandText = strQuery;
     adp.SelectCommand = cmd;
     adp.Fill(ds);
     this.SetLastErrorMsg("执行 SQL 查询语句完毕!");
     cmd.Dispose();
     return ds;
        }
        catch (OleDbException e)
        {
    SetLastErrorMsg("执行 SQL 查询出现异常!【异常代码】" + e.ToString()); 
    return null;
         }
    }//SetLastError用于设置执行SQL的操作结果提示信息