Итак, у меня есть этот инструмент преобразования/маскирования данных на основе Java, который я хотел протестировать на Oracle 10g. Хорошая часть с Oracle 10g заключается в том, что вы получаете загрузку типовых схем с полмиллиона записей в некоторых. Схемы: SH, OE, HR, IX и т. Д. Итак, я установил 10g, выяснил, что сценарии установки находятся под ORACLE_HOME/demo/scripts.Примеры данных выборки Oracle
Я настроил эти скрипты для запуска в пакетном режиме. Это решает половину моего требования - создавать исходные данные для моего тестирования моего программного обеспечения для преобразования данных. Вторая половина требования заключается в том, что я создаю те же схемы под разными именами (TR_HR, TR_OE и т. Д.) Без каких-либо данных. Эти схемы будут представлять мои целевые схемы. Короче говоря, мое программное обеспечение собирает данные из таблицы в схеме и загружает их в одну и ту же таблицу в другой схеме.
Теперь у меня есть две проблемы при создании моей целевой схемы и ее опустошении.
- Мне бы хотелось это в пакетной работе. Но скрипты oracle, которые вы получаете, имена схем схемы не настраиваются. Итак, я попытался создать сценарий, заменив OE на TR_OE, HR с TR_HR и так далее. Однако этот подход является своего рода раздражающим, поскольку схемы выборок являются сложными в том, как они создаются; Oracle создает синонимы, представления, материализованные представления, типы данных и много странных вещей.
- Я хотел бы, чтобы целевые схемы (TR_HR, TR_OE, ...) были пустыми. Но некоторые из схем имеют круглые ссылки, которые не позволяют мне удалять данные. Единственная работа, по-видимому, заключается в удалении некоторых внешних ключей, удалении данных и последующем добавлении ограничений.
Есть ли простой способ для всего этого, без всякой этой суеты? Мне понадобится сложный набор данных для моего тестирования (сложный, как в таблицах с триггерами, несколькими иерархиями .. например .. дочерняя таблица с детьми до 5 уровней, родительская таблица, которая ссылается на таблицу IOT и таблицу IOT это относится к таблице, отличной от IOT и т. д.). Схемы выборки почти идеальны с точки зрения набора данных. Единственная проблема, которую я вижу, - автоматизировать весь этот процесс загрузки исходных схем, а затем создать целевые схемы и опорожнить их. Цените свою помощь и предложения.
UPDATE
Основной сценарий, который требуется для запуска для ручной установки схемы оракул образца является mkplug.sql. Вот строка, которая загружает схемы вверх из DMP файла:
host imp "'sys/&&password_sys AS SYSDBA'" transport_tablespace=y file=&imp_file log=&imp_logfile datafiles='&datafile' tablespaces=EXAMPLE tts_owners=hr,oe,pm,ix,sh
Ну, я пытался модифицировать эту строку (после латания проблем, связанных с путем на mkplug.sql и все других SQL-файлах) к этому:
host imp "'sys/&&password_sys AS SYSDBA'" rows=n transport_tablespace=y file=&imp_file log=&imp_logfile datafiles='&datafile' tablespaces=EXAMPLE tts_owners=hr,oe,pm,ix,sh
И ... это было NOT помощь. Схема была создана с данными строки, несмотря на то, что row = n attribute :(
Вам просто нужна альтернативная версия скриптов, которые создают объекты схемы, но не заполняют их данными? Не можете ли вы просто удалить все инструкции INSERT? –
@Jeffrey nope. образец сценария sql загружается из файла .dmp. (файл данных). В сценариях образца нет вставок statetements. – Jay