繁体   English   中英

将数据从Oracle数据库获取到SQL Server

[英]Getting Data from an Oracle database to SQL Server

我是SQL Server数据库开发人员。 我们当前有一个需求,就是我们需要将我们的产品与客户的现有应用程序链接起来。 我们的产品具有SQL Server 2012数据库,而客户端的现有应用程序使用Oracle 11g。 由于项目完成的时间有限,因此我们无法将应用程序迁移到Oracle。

要求是我们必须从Oracle数据库获取客户详细信息才能在系统中进行计费活动。

因此,我浏览了一些链接,发现可以使用SQL Server链接服务器来执行此操作。 我已经成功创建了一个视图,该视图使用链接服务器从Oracle数据库中使用Customer表。 它将解决我们的问题。

现在这是我的问题:

  • 除了链接服务器,还有其他更好的解决方案吗?
  • 为此使用链接服务器有什么缺点吗?

提前致谢

要考虑的一个缺点是,对视图的筛选可能发生在“您的”端,而不是在Oracle中。 例如,如果您有一个链接服务器(例如使用OPENQUERY语句)和基于该服务器的视图,则可以执行以下操作:

select id from myView where id = 4711

期望结果很快(假设id已索引等),那么您可能会感到震惊,因为实际发生的情况是:

  • Oracle表的全部内容都传递给SQL Server
  • 然后,SQL Server会过滤此数据,即无法将过滤“推入”视图对象(因为它们是远程的)。

注意 :我知道定义链接服务器的方法有两种( openquery和另一种,我忘记了细节),因此这可能并不总是适用,但是您应该意识到可能会对性能造成影响。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM