в SQL слияния синтаксис, как передать пользовательский параметр - PullRequest
0 голосов
/ 09 февраля 2011

Я получаю ОШИБКУ: переменная связывания "a" НЕ ОБЪЯВЛЕНА

1 Ответ

1 голос
/ 09 февраля 2011

Если вы используете SQL * Plus (как я подозреваю из приведенного сообщения об ошибке), то перед выполнением оператора merge выполните

variable a number
exec :a := 5

.

С другой стороны, если вы выполняете оператор в PL / SQL, нет необходимости использовать двоеточие, вместо этого просто поместите вместо него имя переменной:

procedure do_the_merge(a in number) is
begin
   merge.... 
        ....
      where e2.empno = a
        ....;
 end do_the_merge;
...