我在 Oracle 数据库中有一个表,在 SqlCe 数据库中有另一个表。两个表的名称相同,我想使用 .NET Framework 中可用的 SqlBulkCopy 将 SqlCe 数据库中表的所有内容传输到 Oracle 数据库中的同一个表。
我知道使用 SqlBulkCopy 可以将任何数据从任何源传输到 Sql 数据库,但我不确定是否可以从 Sql 数据库(在我的情况下为 SqlCe)到任何源,例如从 SqlCe 到 Oracle。如果可能的话,有人可以确认我吗?
我在 Oracle 数据库中有一个表,在 SqlCe 数据库中有另一个表。两个表的名称相同,我想使用 .NET Framework 中可用的 SqlBulkCopy 将 SqlCe 数据库中表的所有内容传输到 Oracle 数据库中的同一个表。
我知道使用 SqlBulkCopy 可以将任何数据从任何源传输到 Sql 数据库,但我不确定是否可以从 Sql 数据库(在我的情况下为 SqlCe)到任何源,例如从 SqlCe 到 Oracle。如果可能的话,有人可以确认我吗?
您不会使用SqlBulkCopy
,因为它与 SQL Server 的连接协议 (TDS) 相关联;但是,由于目标是 oracle,OracleBulkCopy
应该可以正常工作。您只需ExecuteReader
在 SqlCe 源上使用,并将其输入:
using(var target = new OracleBulkCopy(oracleConnectionString))
using(var source = cecmd.ExecuteReader()) {
target.DestinationTableName = "Foo";
target.WriteToServer(source);
}
http://docs.oracle.com/html/E10927_01/OracleBulkCopyClass.htm