SQL Оператор не возвращает значение UNiX Переменная - PullRequest
1 голос
/ 13 февраля 2020

У меня есть сценарий оболочки test_var. sh, как показано ниже. Я ожидаю значение sysdate в переменной get_date, но получаю пустую строку. Я получил значение Sysdate, если запускал один и тот же код оболочки на другом сервере с одним и тем же пользователем / паролем. Пожалуйста, помогите мне, какие изменения необходимы для свойств сервера или пользователей.

get_date=`sqlplus -s scott/Tiger@dbname <<EOF
set heading off
set feedback off
set pagesize 0
select to_char(Sysdate,"MM-DD-YYYY") from dual;
EOF`

echo $get_date

Заранее спасибо ..!

Ответы [ 3 ]

0 голосов
/ 13 февраля 2020

Вот мой полный сценарий:

cat d1. sh

get_date=`sqlplus -s xxx/xxx << EOF
set heading off
set feedback off
set newpage none
select to_char(sysdate, 'YYYY-MM-DD' ) from dual;
EOF`

echo $get_date

А потом, если я его запущу:

$ sh d1.sh
2020-02-12
0 голосов
/ 06 марта 2020

Проблема с временным пространством в Unix server.Temp папка заполнена. После очистки временного пространства я могу получить значения из Oracle.

0 голосов
/ 13 февраля 2020

Пожалуйста, попробуйте заключить формат в одинарные кавычки:

select to_char(Sysdate,'MM-DD-YYYY') from dual;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...