powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Выполнение pl/sql процедуры из .sh файла на unix-машине
7 сообщений из 7, страница 1 из 1
Выполнение pl/sql процедуры из .sh файла на unix-машине
    #37793636
Фотография May12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребята, подскажите что делаю не так:
Есть mayas_script.sh скрипт содержащий:
Код: powershell
1.
2.
3.
4.
sqlplus -s Scheme@DATABASE/PASS<<end
execute Scheme.procname_1(); 
commit;
end


Scheme.procname_1() - это процедура которая копирует данные из одной таблицы в другую.
После выполнения mayas_script.sh заполняемая таблица остается пустой (но данные - то вроде должны были закомитится!!!).
Если в запустить sqlplus, выполнить процедуру и закомитить её, то ожидаемый результат достигается. Т.е. в ручном режиме работает, а из shell скрипта не работает =(.
Подскажите, где искать ошибку. Спасибо.
...
Рейтинг: 0 / 0
Выполнение pl/sql процедуры из .sh файла на unix-машине
    #37793671
Фотография May12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыла сказать что выполнению sql процедуре предшествовал запуск sql loader:

Код: powershell
1.
sqlldr userid=Scheme/PASS@DATABASE control=!_control_file.ctl LOG=upload.log errors=100



так может загруженные данные не закомитились?
...
Рейтинг: 0 / 0
Выполнение pl/sql процедуры из .sh файла на unix-машине
    #37794080
Андрей Панфилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
May12,

а вы запустите sqlldr как указываете в скрипте, увидите много интересного

Код: sql
1.
2.
 ~]$ sqlldr userid=Scheme/PASS@DATABASE control=!_control_file.ctl LOG=upload.log errors=100
-bash: !_control_file.ctl: event not found



вообще нужно избавляться от дурной привычки использовать в именах файлов что-то отличное от [a-zA-Z0-9_]
...
Рейтинг: 0 / 0
Выполнение pl/sql процедуры из .sh файла на unix-машине
    #37794261
Фотография May12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей, лодер все прогуржает, проверила. !_ в наименовании файла в данном случае негативно не сказывается на загрузке данных.
...
Рейтинг: 0 / 0
Выполнение pl/sql процедуры из .sh файла на unix-машине
    #37794292
Фотография May12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот на что обратила внимание: после того как лодер отрабатывает, скрипт должен переместить два файла, при этом в putty появляется сообщение:

Код: plaintext
1.
mv: сохранение временной отметки `/test/DATA_UPLOAD/2012_05_15_10_04_09/datafile_20120515100409.dat': Operation not permitted
mv: установка прав доступа для `/test/DATA_UPLOAD/FILE_ARCHIVE/2012_05_15_10_04_09/datafile_1_20120515100409.dat': Operation not permitted


может скрипт просто останавливается и sql plus не запускает? как поправить? пойду читать.
...
Рейтинг: 0 / 0
Выполнение pl/sql процедуры из .sh файла на unix-машине
    #37796028
Максим Н
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
May12,
Можно попробовать sql вынести в файл и запустить sqlplus так:
Код: powershell
1.
sqlplus connect@connect/connect @my_script
...
Рейтинг: 0 / 0
Выполнение pl/sql процедуры из .sh файла на unix-машине
    #37797656
Ихтиандр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sqlplus -S
или
sqlplus -s
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Выполнение pl/sql процедуры из .sh файла на unix-машине
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]