ошибка при запуске сценария sql * plus - PullRequest
1 голос
/ 17 ноября 2009

У меня есть скрипт, который просто подключается к таблице в sql * plus и вставляет строку в таблицу.

выдает ошибку, как показано ниже:

SP2-0552: Bind variable "BIND" not declared

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

1 Ответ

4 голосов
/ 17 ноября 2009

Вы пытаетесь запустить sql следующим образом:

SELECT 1 FROM DUAL WHERE :BIND = 1;

SQL * Plus определяет :BIND как переменную связывания, но вы еще не объявили ее в своем сеансе. Чтобы объявить переменную связывания, используйте команду VAR(IABLE).

VAR BIND NUMBER

Затем вы можете присвоить значение переменной.

EXEC :BIND := 1

Запустите select еще раз, чтобы подтвердить, что переменная связывания теперь установлена. Обратите внимание, что вы также можете использовать эту переменную для хранения результатов однострочных запросов.

SELECT 1 INTO :BIND FROM DUAL;
...