2008-10-07 9 views
0

Fondamentalement, j'essaie de copier sélectivement une table d'une base de données à une autre. J'ai deux bases de données [Oracle] différentes (par exemple, fonctionnant sur des hôtes différents) avec le même schéma. Je suis intéressé par un moyen efficace de charger le tableau A dans DB1 avec le résultat de l'exécution d'un select sur le tableau A dans DB2. J'utilise JDBC, si c'est pertinent.Transfert de lignes en vrac entre les bases de données Oracle avec un filtre de sélection

Répondre

8

Utilisez un lien de base de données et utilisez create table comme sélection.

create database link other_db connect to remote_user identified by remote_passwd using remote_tnsname; 

create table a as select * from [email protected]_db; 
0

Si les bases de données proviennent du même fournisseur, ils fournissent une manière native de faire une vue d'une table dans une autre base de données. Dans ce cas, une requête "select into" le fera sans problème

Oracle, par exemple, a le lien de base de données qui fonctionne plutôt bien. En dehors de cela, vous devrez établir une connexion à chaque base de données et lire à partir d'une connexion et l'écrire dans l'autre.

Il existe des outils tels que l'ODI d'Oracle qui peuvent faire le travail sur le terrain, mais ils utilisent tous le même lire dans, écrire modèle

0

Vous pouvez même pas besoin de se déplacer ces données. Peut-être que vous pouvez simplement sélectionner à travers le lien de la base de données.

Questions connexes