2008-10-07 20 views
0

所以可以说我有一个数据集的基础上:基于连接的可更新(和可持久)数据集 - 可能与ADO.Net?

SELECT  TopicLink.*, Topic.Name AS FromTopicName, Topic_1.Name AS ToTopicName 
FROM   TopicLink INNER JOIN 
         Topic ON TopicLink.FromTopicId = Topic.TopicId INNER JOIN 
         Topic AS Topic_1 ON TopicLink.ToTopicId = Topic_1.TopicId 

与老同学ADO,使用记录,我可以修改表TopicLink列上记录的调用保存(),它会赚回来进入数据库。这种功能在ADO.Net中是不可能的,大概是用CommandBuilder?还是有解决方法? (是的,我知道我可以“简单地”编写存储过程...但我正在寻找一个快速简单的解决方案,基本上我们在旧的ADO或MS Access中具有相同的功能,您可以在其中执行多个连接查询,将其绑定到表单上的网格,用户可以更新和保存数据,无需任何代码)

关键点在这里:我不想手动编写INSERT,UPDATE和DELETE语句。

回答

1

我想你可以通过为ADO.net DataAdaptor提供自己的更新命令来实现这一点。检查提供的样本here

+0

我想这是正确的,除了你不必这样做,它是自动的,除非我记得不正确,也许只有MS Access可以做到这一点。 – tbone 2011-05-19 03:02:14

0

这是我的理解,只要你从每个表中选择整个主键,你应该没问题,因为ADO.NET会知道如何自动更新数据。但是,如果返回的数据中没有主键,ADO.NET将不会知道它需要更新的表中的哪些行,并且除非您指定了您自己的UPDATE语句(如另一位回答者建议)。

相关问题