Не требуется PL/SQL
. Сделайте это в SQL
, используя UNION ALL
и SPOOL
, чтобы получить данные из всех 10 таблиц в одном файле. Else, spool в 10 различных файлах для каждого из операторов select
.
SELECT MSISDN, GREET_FILE_NAME FROM table_1
UNION ALL
SELECT MSISDN, GREET_FILE_NAME FROM table_2
UNION ALL
....
and so on for all 10 tables
UNION ALL
SELECT MSISDN, GREET_FILE_NAME FROM table_10
Чтобы избежать дубликатов, вы можете использовать UNION
.
Чтобы создать файл с вашими выходными данными, используйте команду SPOOL
в SQL*Plus
.
Например,
spool <location>
-- your select query here
spool off;
Вы можете даже обернуть его в script
файл и просто запустить скрипт в SQL*Plus
.
Например,
@test.sql
Это будет генерировать все данные таблицы в одном файле.
i.e каждая таблица данных должна быть сохранена в каждом текстовом файле.
Просто выполните SELECT
на каждом столе и SPOOL
, как показано выше. Нет необходимости в UNI0N
.
Например,
-- file 1
spool text_1.csv
SELECT MSISDN, GREET_FILE_NAME FROM table_1
spool off;
-- file 2
spool text_2.csv
SELECT MSISDN, GREET_FILE_NAME FROM table_2
spool off;
...
and so on for all 10 tables