• 主页
  • ASP
  • .NET Framework
  • Web Services
  • VB
  • VC
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • LINQ

为什么更新不了?DataAdapter.

catthunder 2004-12-22 04:34:58
在网页里有TextBox,绑定到数据集dataSet11。
然后用oleDbDataAdapter1.Fill(dataSet11);

修改数据后,直接用
oleDbConnection1.Open();
oleDbDataAdapter1.Update(dataSet11);
oleDbConnection1.Close();
更新,但是数据没任何改变.
...全文
69 点赞 收藏 10
写回复
10 条回复
lr2651 2004年12月25日
System.Data.OleDb.OleDbCommandBuilder cb = new System.Data.OleDb.OleDbCommandBuilder(oleDbDataAdapter1);
这句写到Page_Load()里,和Adapter DataSet一同定义。
回复 点赞
catthunder 2004年12月24日
UP
回复 点赞
catthunder 2004年12月23日
private void DataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
System.Data.OleDb.OleDbCommandBuilder cb = new System.Data.OleDb.OleDbCommandBuilder(oleDbDataAdapter1);
cb.DataAdapter = oleDbDataAdapter1;
oleDbConnection1.Open();
oleDbDataAdapter1.Update(dataSet11);
dataSet11.AcceptChanges();
oleDbConnection1.Close();
}
這樣還是不行。
回复 点赞
lr2651 2004年12月23日
那你还需要oleDbDataAdapter1.Update(dataSet11);这句啊,还有就是要写在更新事件里啊
回复 点赞
catthunder 2004年12月22日
up
回复 点赞
catthunder 2004年12月22日
用了System.Data.OleDb.OleDbCommandBuilder cb
= new System.Data.OleDb.OleDbCommandBuilder(oleDbDataAdapter1);这句还是不行,
好象在textbox修改后不会自动更新Dataset中的数据。
回复 点赞
adoado 2004年12月22日
在处理完修改之后,要调用数据集的AcceptChanges()方法.这个方法提交了对数据集的修改。
oleDbConnection1.Open();
oleDbDataAdapter1.Update(dataSet11);
dataSet11.AcceptChanges();
oleDbConnection1.Close();
回复 点赞
lr2651 2004年12月22日
System.Data.OleDb.OleDbCommandBuilder cb = new System.Data.OleDb.OleDbCommandBuilder();
cb.DataAdapter = oleDbDataAdapter1;
或者这样
回复 点赞
lr2651 2004年12月22日
System.Data.OleDb.OleDbCommandBuilder cb = new System.Data.OleDb.OleDbCommandBuilder(oleDbDataAdapter1);
有这句才行。
回复 点赞
lr2651 2004年12月22日
加CommandBuilder
回复 点赞
发动态
发帖子
.NET技术社区
创建于2007-09-28

4.9w+

社区成员

66.8w+

社区内容

.NET技术交流专区
社区公告
暂无公告