首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

更新数据源的有关问题

2012-01-24 
更新数据源的问题int str2 58string str ConfigurationSettings.AppSettings[accessCon]OleDbConn

更新数据源的问题

  int str2 = 58;
  string str = ConfigurationSettings.AppSettings["accessCon"];
  OleDbConnection conn = new OleDbConnection(str);
  string str1 = "select fangwei from house where id =" + str2;
  OleDbDataAdapter od = new OleDbDataAdapter(str1, conn);
  OleDbCommandBuilder ocm = new OleDbCommandBuilder(od);
  DataSet ds = new DataSet();
  od.Fill(ds, "table");
  DataTable dt = ds.Tables["table1"];
  DataRow row = dt.Rows[0];
  row["fangwei"] = TextBox1.Text;
  od.Update(ds, "table1");
  datagrid();

更新不了呢,总是报这错误,高手帮忙看看吧,我实在检查不出来了,,晕 以前用到都是对的
这次怎么老是报错
System.NullReferenceException: 未将对象引用设置到对象的实例。 在 Default3.Button1_Click(Object sender, EventArgs e)

[解决办法]
建议用Update语句来写,这样要安全得多.
如果你十分想用DataAdapter来做更新,那你在读这个表时,应该判断一下记录不为null时,才做更新,这样就不会出现"System.NullReferenceException: 未将对象引用设置到对象的实例。"了

DataTable dt = ds.Tables["table1"]; 
if (dt.Rows.Count > 0) //写此句来判断
{
DataRow row = dt.Rows[0]; 
row["fangwei"] = TextBox1.Text; 
od.Update(ds, "table1"); 
}

热点排行