2012-07-23 67 views
0

中需要的帮助开始在vb.net中的一个项目中从Oracle数据库中读取所有主数据(我只有对Oracle数据的读访问权限)在同一个项目中使用Oracle和sqlserver在逻辑

情况是我将Oracle的数据绑定到telerik数据网格,管理员可以选择将更多用户添加到网格并删除用户。

但是我不能在Oracle数据库中添加/删除数据我只能从中读取数据。

所以我想在sql服务器中添加2个表addedusers和删除用户,并以某种方式检查用户是否在删除的表中将它们从Oracle结果中删除之后将其绑定到数据网格。

但我从来没有工作过,也不知道如何与两个数据库进行交互。

如果你有更好的想法来处理这种情况请让我知道。

也让我知道如何扣除已删除的用户/如何将添加的用户从sql表中添加到Oracle结果中。

感谢

回答

2

而不是试图在两个数据库来协调的结果集,一个简单的解决方案是把所有的用户信息到SQL Server数据库和工作从那里。

  1. 设置ETL过程(例如,通过使用SSIS)所有的 拉从Oracle数据库SQL Server中的计划的基础上的用户信息到用户表 。 ETL负责 将SQL Server数据库中的用户与来自 Oracle数据库的用户同步。
  2. 在SQL Server的Users表中包含一个名为的列,删除可用于跟踪已删除的用户。
  3. 将您的telerik控件绑定到SQL Server 数据库中的用户表,而不是Oracle数据库。

HTH

+0

在Oracle数据库的数据不断变化的。所以如果我使用SSIS(我不确定如果我可以在curr环境中使用它 - 我们没有ETL)SSIS是否每天同步更新? – SmilingLily 2012-07-23 02:03:48

+1

这是正确的。您将需要创建适当的逻辑,但本质上这个过程是更新SQL Server中的匹配记录,并在SQL Server中创建没有找到匹配项的新记录。 – Teppic 2012-07-23 02:20:55

+1

也可能值得看看SQL Server中的MERGE函数。 Google搜索** SQL Server MERGE **将返回大量信息。 – Teppic 2012-07-23 02:23:50