2008-12-13 6 views

ответ

4

Это можно сделать несколькими способами.

Во-первых, если вы используете 10g или более поздней версии, вы можете использовать насос данных (expdp и impdp) в отличие от imp и exp. Это новые и более способные версии этих инструментов.

А как называть их из PL/SQL, вы можете сделать так:

  • Вы можете сделать внешний вызов процедуры к DLL (или разделяемую библиотеку, если вы на UNIX)
  • вы могли бы написать простой класс Java (для запуска в Oracle JVM), которая будет вызывать с помощью Java
  • вы можете использовать Advanced очереди или DBMS_PIPE для взаимодействия с внешними приложениями
  • вы можете использовать utl_tcp взаимодействовать по сети (например, SOAP)
  • В 10g можно использовать пакет DBMS_SCHEDULER для вызова OS команда

Первые и последние варианты должны быть хорошо документированы в онлайн-документации Oracle - два другой варианта потребует немного больше координации и кодирования.