Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / как в скрипте, в spool имя файла добавить SID базы / 8 сообщений из 8, страница 1 из 1
15.10.2016, 13:54
    #39327548
Igor M.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в скрипте, в spool имя файла добавить SID базы
Добрый день, запускаю через sqlplus user@dbname @script.sql

Подскажите, пожалуйста, как файле script.sql указать имя файла для spool, чтобы результат выполнения скрипта (с select'ом) сохранялся в файл с именем БД на которой он выполнялся? Т.е. по шаблону script_dbname.lst
...
Рейтинг: 0 / 0
15.10.2016, 22:41
    #39327650
Vadim Lejnin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в скрипте, в spool имя файла добавить SID базы
Igor M.,
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Не совсем SID, но:
SQL> defi
DEFINE _DATE           = "15-OCT-16" (CHAR)
 DEFINE _CONNECT_IDENTIFIER = "" (CHAR)
DEFINE _USER           = "ORCL" (CHAR)
DEFINE _PRIVILEGE      = "" (CHAR)
DEFINE _SQLPLUS_RELEASE = "1102000300" (CHAR)
DEFINE _EDITOR         = "Notepad" (CHAR)
SQL> spool &_CONNECT_IDENTIFIER.SCRIPT.log
 



Обратите внимание на точку в конце идентификатора, как знак конкатенации
...
Рейтинг: 0 / 0
15.10.2016, 22:44
    #39327651
Vadim Lejnin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в скрипте, в spool имя файла добавить SID базы
Если нужна точка, то удвойте ее, первая будет как конец идентификатора, вторая - просто точка:
Код: plsql
1.
SQL> spool script_&_CONNECT_IDENTIFIER..log
...
Рейтинг: 0 / 0
17.10.2016, 07:17
    #39327933
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в скрипте, в spool имя файла добавить SID базы
Никогда особо не извращался в sqlplus, но если надо - поиск "sqlplus переменные", вторая ссылка в поиске .
...
Рейтинг: 0 / 0
17.10.2016, 16:48
    #39328394
Igor M.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в скрипте, в spool имя файла добавить SID базы
Vadim LejninIgor M.,
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Не совсем SID, но:
SQL> defi
DEFINE _DATE           = "15-OCT-16" (CHAR)
 DEFINE _CONNECT_IDENTIFIER = "" (CHAR)
DEFINE _USER           = "ORCL" (CHAR)
DEFINE _PRIVILEGE      = "" (CHAR)
DEFINE _SQLPLUS_RELEASE = "1102000300" (CHAR)
DEFINE _EDITOR         = "Notepad" (CHAR)
SQL> spool &_CONNECT_IDENTIFIER.SCRIPT.log
 



Обратите внимание на точку в конце идентификатора, как знак конкатенации

Насколько я понимаю, в данном случае, имя базы будет заданной константой, а надо, чтобы при запуске на разных БД было разным
...
Рейтинг: 0 / 0
17.10.2016, 17:08
    #39328417
Maxim Demenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в скрипте, в spool имя файла добавить SID базы
Igor M.,

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

Regards

Maxim
...
Рейтинг: 0 / 0
17.10.2016, 17:10
    #39328420
Nobody1111
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в скрипте, в spool имя файла добавить SID базы
Igor M.Vadim LejninIgor M.,
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Не совсем SID, но:
SQL> defi
DEFINE _DATE           = "15-OCT-16" (CHAR)
 DEFINE _CONNECT_IDENTIFIER = "" (CHAR)
DEFINE _USER           = "ORCL" (CHAR)
DEFINE _PRIVILEGE      = "" (CHAR)
DEFINE _SQLPLUS_RELEASE = "1102000300" (CHAR)
DEFINE _EDITOR         = "Notepad" (CHAR)
SQL> spool &_CONNECT_IDENTIFIER.SCRIPT.log
 



Обратите внимание на точку в конце идентификатора, как знак конкатенации

Насколько я понимаю, в данном случае, имя базы будет заданной константой, а надо, чтобы при запуске на разных БД было разным
А проверить?
...
Рейтинг: 0 / 0
18.10.2016, 01:52
    #39328607
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в скрипте, в spool имя файла добавить SID базы
_CONNECT_IDENTIFIER слишком прямолинейный
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
tst> connect u1/u1@tst
Connected.
tst> define _CONNECT_IDENTIFIER
DEFINE _CONNECT_IDENTIFIER = "tst" (CHAR)
tst> 
tst> 
tst> connect u1/u1@hercules:1521/tst.xxx.ru
Connected.
tst> define _CONNECT_IDENTIFIER
DEFINE _CONNECT_IDENTIFIER = "hercules:1521/tst.xxx.ru" (CHAR)
tst> 
tst> 
tst> define db_name
SP2-0135: symbol db_name is UNDEFINED
tst> column db_name new_value db_name noprint
tst> select sys_context('userenv', 'db_name') db_name from dual;




1 row selected.

tst> define db_name
DEFINE DB_NAME         = "tst" (CHAR)
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / как в скрипте, в spool имя файла добавить SID базы / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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