数据集更新失败

本文关键字:失败 更新 数据集 | 更新日期: 2023-09-27 18:22:07

我正在尝试更新一个修改后的数据集,如下所示。我弄错了。我如何更正此问题?

System.Data.dll中发生"System.InvalidOperationException"类型的未处理异常附加信息:更新无法找到TableMapping["Table"]或DataTable"Table"

string strAccessConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:''Program Files''ASWorx Products''ASWorx200''Database''GemDatabase.mdb";
string strAccessSelect = "SELECT * FROM VariableTable";
// Create the dataset and add the Categories table to it:
DataSet myDataSet = new DataSet();
OleDbConnection myAccessConn = new OleDbConnection(strAccessConn);            
OleDbCommand myAccessCommand = new OleDbCommand(strAccessSelect, myAccessConn);
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(myAccessCommand);
myAccessConn.Open();
myDataAdapter.Fill(myDataSet, "VariableTable");
DataRowCollection dra = myDataSet.Tables["VariableTable"].Rows;
foreach (DataRow dr in dra)
{
    dr[1] = "SV";
    break;
}
myDataAdapter.Update(myDataSet);

数据集更新失败

您需要使用OleDbCommandBuilder对象-它生成单个表命令。

OleDbCommand myAccessCommand = new OleDbCommand(strAccessSelect, myAccessConn);
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter(myAccessCommand);
OleDbCommandBuilder cmd=new OleDbCommandBuilder(myDataAdapter);
myDataAdapter.Fill(myDataSet, "VariableTable");
..

数据集结果,

myDataAdapter.Update(myDataSet,"VariableTable");