2008-10-09 5 views
1

Actuellement, je tire des données à partir de bases de données MS SQL Server distantes à l'aide de connecteurs JDBC personnalisés. Cela fonctionne bien, mais ne se sent pas comme la façon de le faire.Quelles sont les options disponibles pour se connecter à une base de données Microsoft SQL Server à partir d'une base de données Oracle?

Je pense que je devrais être capable de mettre une chaîne de connexion JDBC dans les noms tns sur le serveur et de le faire "juste travailler". J'ai regardé un peu autour de cette fonctionnalité mais il ne semble pas être là.

De cette façon, je pourrais me connecter à pratiquement n'importe quelle base de données en utilisant simplement un lien de base de données.

Ai-je manqué quelque chose? Il semble que les deux options sont Generic Connectivity et Oracle Gateways, mais je suis surpris que tout soit là. La connectivité générique est fournie avec la licence de base de données et Oracle Gateways est un module complémentaire. Pour Generic Connectivity, si vous utilisez Linux (comme moi), vous devez vous procurer un pilote ODBC car il n'est pas fourni avec la base de données.

Cependant ... avec Oracle étant de tels fans de Java, et avec une JVM intégrée à la base de données j'aurais pensé qu'une technologie de liaison basée sur JDBC aurait été une évidence. Il semble une extension naturelle d'avoir une chaîne de connexion JDBC dans TNSNAMES et tout "fonctionnerait".

Quelqu'un a des idées pourquoi ce n'est pas disponible?

Répondre

4

Generic Connectivity est ce que vous recherchez, il vous permettra de configurer un lien de base de données à distance contre MS SQL Server, de sorte que vous pouvez faire des requêtes comme

select * from [email protected]_ms_sql_server; 

Je ne l'ai utilisé dans Oracle 9i contre mysql, et trouvé, que dans nos cas, cela ne fonctionnait pas très bien, car il a fini par utiliser MASSIVE quantités de RAM, nous l'utilisons encore, mais maintenant il suffit de l'utiliser pour la synchronisation à une table locale plutôt que de faire des requêtes en direct encontre. MAIS, il pourrait être complètement différent de MS SQL Server, et en 10g/11g

Questions connexes