我需要使用SSIS将数据从Oracle数据库获取到Sql数据库。
我使用的是sql Server 2012 Standard Edition 64位,而oracle是11g。
我尝试下载oracle驱动程序(64位Oracle数据访问组件(ODAC))以在Sql server中安装,这将允许我连接到Oracle数据库,但无法实现相同的目标。
请帮我解决这个问题。
答案 0 :(得分:18)
我必须在很多场合这样做,不幸的是,Oracle网站在尝试确定您需要的内容时并不是特别有用。
您需要下载副本 “ODTwithODAC1120320_32bit.exe”,可在以下网址找到:
http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html
64位版本是没用的,32位驱动程序可以正常工作。如果要从代理运行包,请在开发计算机和SQL Server框上安装它。
然后,您可以选择提供商“.Net Providers \ OracleCLient Data Provider” 连接字符串看起来像这样(我认为1521是默认的Oracle端口):
(DESCRIPTION =(ADDRESS =(PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521))(CONNECT_DATA =(SERVICE_NAME = XXXXX)))
答案 1 :(得分:4)
您应该尝试使用SSIS Connectors for Oracle(由Attunity制作)。它们可以从Microsoft here免费下载。从Oracle db中选择数据时,SSIS连接器可提供最佳性能。此外,您需要使用正确的连接配置设置tnsnames.ora文件。