一个小的CS架构的应用程序,使用Access数据库,数据访问层想用 XSD Ado.net 减轻数据访问代码工作量但是测试之后发现可以正常读取数据,但不能插入、修改、删除数据,代码如下,Access 数据库中有一个 Address 表,表中有一个字段的名字也叫Address,其中第一行的值为:Old AddressEntity.DataSet1TableAdapters.AddressTableAdapter adapter =
new Entity.DataSet1TableAdapters.AddressTableAdapter();
Entity.DataSet1 ds = new Entity.DataSet1();
adapter.Fill(ds.Address);MessageBox.Show(ds.Address[0].Address);
ds.Address[0].Address = "Address CCCC";
MessageBox.Show(ds.Address[0].Address);
ds.Address.AcceptChanges();
ds.AcceptChanges();
adapter.Update(ds.Address[0]);
ds.Address.AcceptChanges();
ds.AcceptChanges();
ds.Address.Clear();
adapter.Fill(ds.Address);
MessageBox.Show(ds.Address[0].Address);
ds.Address.Clear();
adapter.Fill(ds.Address);
MessageBox.Show(ds.Address[0].Address);
运行结果,分别弹出对话框:Old Address, Address CCC, OldAddress
数据库中的值也没有发生任何变化
new Entity.DataSet1TableAdapters.AddressTableAdapter();
Entity.DataSet1 ds = new Entity.DataSet1();
adapter.Fill(ds.Address);MessageBox.Show(ds.Address[0].Address);
ds.Address[0].Address = "Address CCCC";
MessageBox.Show(ds.Address[0].Address);
ds.Address.AcceptChanges();
ds.AcceptChanges();
adapter.Update(ds.Address[0]);
ds.Address.AcceptChanges();
ds.AcceptChanges();
ds.Address.Clear();
adapter.Fill(ds.Address);
MessageBox.Show(ds.Address[0].Address);
ds.Address.Clear();
adapter.Fill(ds.Address);
MessageBox.Show(ds.Address[0].Address);
运行结果,分别弹出对话框:Old Address, Address CCC, OldAddress
数据库中的值也没有发生任何变化
解决方案 »
- 使用皮肤之后groupbox背景透明问题
- ConfigurationManager 该类是不是只能操作 web.config 文件 如果 同一个目录下 有 web.config 和 IOC.config
- 为什么timer类没有执行事件啊 帮我看一下哪里错了
- 求一正则表达式写法
- tabcontrol 中不同tabpag 里listview 和treeview显示问题
- 未来报表发展的新方向,用word设计报表,只要懂得word就可以设计报表
- VS2005连接远程SQL服务器问题
- 去掉标题栏后怎么才能正常显示系统菜单---急急在线等
- 求一简单正则,进来看看!
- 我想把文件直接复制到文件夹下
- c#如何实现以下效果?
- 列读取的问题,大家帮帮忙?
ds.AcceptChanges();
ds.Address[0].SetModified();
adapter.Update(ds.Address[0]);这样也会更新数据库,不过这样多此一举了,不调用AcceptChanges就可以,
adapter.Insert("AAAA", "BBB");