2016-03-27 4 views
2

Je dois insérer environ 50 tables contenant des données en masse via DBLink. J'utilise généralement l'instructionConseils de base de données Oracle pour bulk Insert from DBLink

insert into <table_name> 
select * from <table_name>@DBLink 

Dans certains cas, l'insertion est trop longue. Quels conseils de base de données utiles peuvent être utilisés ici pour accélérer le processus?

Répondre

1

Vous pouvez utiliser ORACLE'sAPPEND soupçon

L'indice APPEND indique à l'optimiseur d'effectuer un insert chemin direct, ce qui améliore les performances de INSERT .. opérations SELECT pour plusieurs raisons:

Les données sont ajoutées à la fin de la table plutôt que d'essayer d'utiliser l'espace libre existant dans la table.

Les données sont écrites directement dans les fichiers de données, en contournant le cache tampon.

Les contraintes d'intégrité référentielle ne sont pas prises en compte. *

Aucun traitement de déclenchement n'est effectué. *

Syntaxe:

INSERT /* + APPEND */ INTO YourTable 
SELECT * FROM [email protected]