日期:2014-05-17  浏览次数:21182 次

Update 无法找到 TableMapping['table'] 或 DataTable“table” 急!!
代码如下:
public DataSet UpdateByDataSet(DataSet ds)
{      
     SqlCommand myCommand = new SqlCommand("select * from financetable", conn);   
     SqlDataAdapter myAdapter = new SqlDataAdapter(myCommand );  
     SqlCommandBuilder myCommandBuilder = new SqlCommandBuilder(myAdapter);     
     myAdapter.InsertCommand = myCommandBuilder .GetInsertCommand();
     myAdapter.UpdateCommand = myCommandBuilder .GetUpdateCommand();
     myAdapter.DeleteCommand = myCommandBuilder .GetDeleteCommand();
   try
{
             conn.Open();
              myAdapter.Fill(ds);
              myAdapter.Update(ds,"financetable" );  //这里报错  Update 无法找到 TableMapping['financetable'] 或 DataTable“financetable”
              conn.Close();
       
}
catch(Exception err)
{
    err.ToString();
      conn.Close(); 
}
   return ds;
}

------解决方案--------------------
你这个方法没有定义Dataset,或者DataSet的访问级别限制导致你的方法访问不了DataSet
------解决方案--------------------
定义Dataset实例 然后再填充表格
------解决方案--------------------
myAdapter.Fill(ds,"financetable");

myAdapter.Fill(ds); //改成上面哪句
  myAdapter.Update(ds,"financetable" ); //这里报错 Update 无法找到 TableMapping['financetable'] 或 DataTable“financetable”

------解决方案--------------------
myAdapter.Fill(ds,"financetable");

myAdapter.Fill(ds); //改成上面哪句
------解决方案--------------------
你都没定义update的command怎么让数据库update
------解决方案--------------------
表有主键不???
------解决方案--------------------
引用:
改过了,现在不报错,但是数据库数据并没有修改


myAdapter.Fill(ds); //填充查询数据至数据集
myAdapter.Update(ds,"financetable" );  //Update方法是根据DataTable里的行状态来提交数据的,你的数据自上次填充后,无任何变化(没有新增,也没有删除和修改)。即里面所有行的DataRow.RowState 都是NoChanged

DataRow.RowState
------解决方案--------------------
引用:
引用:
改过了,现在不报错,但是数据库数据并没有修改


myAdapter.Fill(ds); //填充查询数据至数据集
myAdapter.Update(ds,"financetable" ); //Update方法是根据DataTable里的行状态来提交数据的,你的数据自上次填充后,无任何变化(没有新增,也没有删除和修改)。即里面所有行的Data……



你要绑