【发布时间】:2016-06-08 00:34:38
【问题描述】:
我有一个 Oracle 数据库,其中包含一个表 Customers,我对其只有只读访问权限。我想从该表中复制一些列并将它们插入到名为Customers 的 SQL Server 2008 R2 表中,仅当目标表中不存在 ID 时。
我是 C# 新手....我可以使用 Oracle.DataAccess 成功打开和读取 Oracle,并且可以写入 SQL Server,但是我不知道如何从 Oracle 读取然后写入 SQL Server。我能找到的所有示例都是针对同一类型的数据库的。
【问题讨论】:
-
创建两个连接:一个连接到 oracle DB,另一个连接到 MSSQL DB。或者,如果这是一次性的,在 MSSQL 中创建一个链接服务器......然后简单地编写一个查询
-
不是一次性的,我与每个数据库都有连接,问题是如何首先比较结果以找到需要复制的 id,然后如何复制到内存中以写回 SQL?我可能在这里遗漏了一个概念。仅在 SQL 中,我会进行连接并插入,但由于两个数据库来自不同的来源,我不知道从哪里开始。
-
如果源表不是太大,一个选项是使用 SQL Management Studio 中的导入导出向导复制整个表,然后使用一些 tsql 插入缺失的行。这在幕后使用了 SSIS,这是完成这项工作的理想工具。
标签: c# sql-server oracle