目前,我使用自定义构建的JDBC连接器从远程MS SQL Server数据库中提取数据。这样做很好,但感觉不像是这样做的。
我觉得我应该能够将JDBC连接字符串放入服务器上的tnsnames中并使其“正常工作”。我已经四处查看了这个功能,但它似乎并不存在。
通过这种方式,我可以使用数据库链接连接到几乎任何数据库。
我错过了什么吗?
看起来这两个选项是Generic Connectivity和Oracle Gateways,但我很惊讶这就是全部。 Generic Connectivity附带数据库许可证,Oracle Gateways是附加组件。对于通用连接,如果你在Linux上运行(像我一样),你需要获得一个ODBC驱动程序,因为它没有与数据库捆绑在一起。
然而......由于Oracle是如此敏锐的Java粉丝,而且数据库中内置了JVM,我认为基于JDBC的链接技术本来就不费吹灰之力。在TNSNAMES中拥有一个JDBC连接字符串似乎是一种自然的扩展,一切都“正常”。
任何想法为什么没有这个?
答案 0 :(得分:4)
Generic Connectivity,它可以让你设置一个针对MS SQL Server的远程数据库链接,这样你就可以进行像
这样的查询select * from mytable@my_ms_sql_server;
我只在Oracle 9i中使用它来对抗mysql,并发现,在我们的情况下,它不能很好地工作,因为它最终耗尽了大量的ram,我们仍然使用它,但现在只是用它来同步到本地表,而不是对它进行“实时”查询。但是,它可能与MS SQL Server完全不同,并且在10g / 11g
中答案 1 :(得分:2)