通过DataSet 更新数据库 报错
以下是我的方法publicDataSetUpdateByDataSet(DataSetds,stringstrTblName){SqlConnectionconn=dat...
以下是我的方法
public DataSet UpdateByDataSet(DataSet ds, string strTblName)
{
SqlConnection conn = data_con.getcon();
SqlDataAdapter myAdapter;
string strSQL = "select * from "+ strTblName;
SqlCommand myCommand = new SqlCommand(strSQL, conn);
myAdapter.SelectCommand = myCommand;
SqlCommandBuilder myCommandBuilder = new SqlCommandBuilder(myAdapter);
try
{
lock (this) //处理并发情况(分布式情况)
{
myAdapter.Update(ds.Tables[0]);
}
}
catch (Exception err)
{
conn.Close();
throw err;
}
myAdapter.Fill(ds);
return ds; //数据集的行状态在更新后会都变为: UnChange,在这次更新后客户端要用返回的ds
}
出现一个错误
DataTable“Table”中缺少 SourceColumn“xxsk_main_ID”的 DataColumn“xxsk_main_ID”。
有主键 包含xxsk_main_ID 传递过来的DataSet ds中的table[0]不包含该列 展开
public DataSet UpdateByDataSet(DataSet ds, string strTblName)
{
SqlConnection conn = data_con.getcon();
SqlDataAdapter myAdapter;
string strSQL = "select * from "+ strTblName;
SqlCommand myCommand = new SqlCommand(strSQL, conn);
myAdapter.SelectCommand = myCommand;
SqlCommandBuilder myCommandBuilder = new SqlCommandBuilder(myAdapter);
try
{
lock (this) //处理并发情况(分布式情况)
{
myAdapter.Update(ds.Tables[0]);
}
}
catch (Exception err)
{
conn.Close();
throw err;
}
myAdapter.Fill(ds);
return ds; //数据集的行状态在更新后会都变为: UnChange,在这次更新后客户端要用返回的ds
}
出现一个错误
DataTable“Table”中缺少 SourceColumn“xxsk_main_ID”的 DataColumn“xxsk_main_ID”。
有主键 包含xxsk_main_ID 传递过来的DataSet ds中的table[0]不包含该列 展开
3个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询