×

Loading...
Ad by
  • 推荐 OXIO 加拿大高速网络,最低月费仅$40. 使用推荐码 RCR37MB 可获得一个月的免费服务
Ad by
  • 推荐 OXIO 加拿大高速网络,最低月费仅$40. 使用推荐码 RCR37MB 可获得一个月的免费服务

问个 .net 关于在两个数据库之间传递数据的问题

我是.net 新手,DBA出身,以前我在oracle 和 sql server 之间传递数据都是通过 database link/linked server 做的。比如在sqlserver 上创建linked server 连接到 oracle, 然后在sqlserver上用这样一条语句把oracle的数据转到sqlserver. something like this.
insert into dbname.dbo.table_name select * from oracleservername..schemaname.tablename
etc.

现在因为security的问题, 我不能再创建database link/linked server, 需要用 vb.net application 做这件事。 我现在的想法是

创建两个database connection, 一个连oracle, 另一个连sql.
创建一个datatable,
把数据从oracle中读到datatable中
把数据写到sqlserver 中

这样做的劣势是会增加中间层(vb.net application)的负担,效率也不会好,有没有其他更好的办法?
Report

Replies, comments and Discussions:

  • 工作学习 / 学科技术讨论 / 问个 .net 关于在两个数据库之间传递数据的问题
    我是.net 新手,DBA出身,以前我在oracle 和 sql server 之间传递数据都是通过 database link/linked server 做的。比如在sqlserver 上创建linked server 连接到 oracle, 然后在sqlserver上用这样一条语句把oracle的数据转到sqlserver. something like this.
    insert into dbname.dbo.table_name select * from oracleservername..schemaname.tablename
    etc.

    现在因为security的问题, 我不能再创建database link/linked server, 需要用 vb.net application 做这件事。 我现在的想法是

    创建两个database connection, 一个连oracle, 另一个连sql.
    创建一个datatable,
    把数据从oracle中读到datatable中
    把数据写到sqlserver 中

    这样做的劣势是会增加中间层(vb.net application)的负担,效率也不会好,有没有其他更好的办法?
    • If you have to use .NET application as middle layer.
      You can use SqlBulkCopy.WriteToServer Method to bulk insert whole datatable to SQL server table.

      It’s pretty fast in sql server side although getting data from oracle is slow.