繁体   English   中英

.NET报告同时从MSSQL和Oracle获取数据

[英].NET report getting data from both MSSQL and Oracle

我们正在使用SQL Server 2016和Oracle 11g(在升级到Oracle 12c的过程中)。 我不是.NET开发人员; 因此,示例将非常有帮助。

我们的开发人员正在尝试结合MSSSQL(内部应用程序)和Oracle(ERP系统)中的数据,以在.NET中创建报告(因此只需从这两个数据库中读取)。 开发人员坚决需要在托管MSSQL的服务器上安装Oracle客户端。

从安全性角度(表面积暴露)出发,我们鼓励尽可能减少表面积暴露。 我在这个博客上找到了一种可能的方法。 这个博客似乎建议创建一个函数作为连接字符串。

问题:

  1. .NET(数组等)中是否没有选项将来自MSSQL和/或Oracle的数据保存在内存中,以便与另一个数据库进行比较(使用员工ID)?
  2. 由于这只是读取,因此在服务器上安装完整的Oracle客户端是否过大?
  3. 如果您需要从两个数据库中提取数据,专家在这里怎么样?

谢谢。

在某个时候,一台计算机将必须具有Oracle客户端。 没有它,我不知道连接Oracle的方法。

我可以想到两种方法来做到这一点。 您可以直接在SQLServer中链接Oracle表 我想您可以然后使用SQLServer方言查询Oracle表。 我敢肯定这样做会降低性能,特别是如果跨RDBMSes加入。

第二种选择是在SQLServer上具有某种表,该表具有Oracle数据的副本。 根据有多少数据或是否保留数据,它可能比通过联接查询链接表要快。 它可以是永久表或临时表。 您仍然需要查询Oracle计算机,并根据需要或按计划完成。

如果数据很少,则可能甚至不需要表。

您还可以使用另一台计算机执行Oracle DB查询,并将数据移至SQLServer。 您不需要在SQLServer上使用Oracle客户端,而在该计算机上则需要。

我将研究构建在与MSSQL服务器不同的服务器上运行的Windows服务,该服务将利用托管Oracle客户端按计划从Oracle到MSSQL服务器的ETL数据,以使您的.NET报告可以从一个位置访问报告数据,即您的MSSQL服务器。

暂无
暂无

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

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