У меня возникли проблемы с подключением к базе данных с sqlplus в пакетном файле. Я пытаюсь создать пакетный скрипт, который запрашивает имя сервера/службы, имя пользователя и пароль. Это выглядит примерно так:batch script login Параметры sqlplus
set /P ORCL=Enter server or service_name:
set /P UN=Enter DB User:
set /P PWD=Enter password for DB user:
sqlplus %UN%/%PWD%@ORCL @.\File_to_run.sql
...
Я не использую TNS локально, но подключение с Имя_машины, как это:
username/[email protected]:1521/service_name
Это прекрасно работает, когда я начиная SQLPLUS через CMD проворная, но не тогда, когда я запускаю этот bat-файл. В нем указано, что имя пользователя или пароль неверны и запрашивают имя пользователя и пароль ...
Я думаю, что это может быть что-то С переменной ORCL, когда она помещается в список параметров sqlplus. Но я попытался процитировать это так:
...
sqlplus %UN%/%PWD%"@ORCL" @.\File_to_run.sql
и
sqlplus %UN%/%PWD%@"ORCL" @.\File_to_run.sql
Но не успех ... Если бы я попробовать то же самое, но вместо @ service_name/_string с помощью "AS SYSDBA" и соответствующее имя пользователя и пароль, он будет работать нормально. Кто-нибудь знает, как правильно это сделать?
BR ФАО
Моя ошибка ... Я использую знаки процента :-) как это.: sqlplus% UN% /% PWD% @% ORCL% @. \ file.sql @ перед тем, как файл будет запущен, будет особый знак sqlplus, поэтому он должен быть там :-) – Frankie
Вышеупомянутый код решения проблемы ? Обратите внимание, что первый параметр находится в двойных кавычках. Вам нужно ввести значение «машинное имя: 1521/service_name» для ввода ORCL. –
Большое спасибо @mihai_mandis. Он работал очень vell :-) – Frankie