Table of Contents
Каждую последнюю неделю некоторые из наших потенциальных клиентов сообщали нам, что они постоянно сталкивались с ошибкой sp2-0552 в Oracle.
Одобрено
Эта ошибка SP2-0552 связана с тем, что указанная переменная привязки никогда не создавалась. Запустите команду VARIABLE на рынке, чтобы проверить, можно ли найти переменные связывания, которые используются в вашем операторе SQL. Перед запуском оператора SQL для переменных вариации вы должны использовать все команды VARIABLE для объявления каждой отдельной переменной.
Также обратите внимание, что точное типичное использование переменных отверстий включает буквальную this строку, в которой указан предикат WHERE, поэтому вы можете восстановить название отдела рядом с игрой (чтобы вы могли использовать этот же запрос для всех отделов).
ПЕРЕМЕННАЯ v_max_sal НОМЕР;ПЕРЕМЕННАЯ v_dname VARCHAR2 (14);начинать: v_dname: = max (sal) 'ПРОДАЖА';Выберите EN: v_max_salАвтор: scott.emp e, scott.dept dгде e.deptno = d.deptnoа D. равно dname: v_dname;КОНЕЦ;/печать v_max_sal;
Кроме того, вы можете удалить двоеточие, чтобы начать с переменной, и это тоже становится утомительным:
SQL> устанавливает большую часть вывода сервера наОбъявить SQL> крошечный v_max_sal НОМЕР (20); 3. Начать 4 предпочитаю max (sal) IN v_max_sal все пять прав от scott.emp e, scott.dept d восьмерка, лучшее место e.e.deptno = d.deptno некоторые и дополнительно d.dname = 'SALES'; dbms_output Это важно. put_line (v_max_sal); 9 КОНЕЦ; 10 /2850
Обратите внимание, что любой этот параметр приводит к закрытому запросу в вашей базе данных в компоненте решения, предложенного в процессе @Alex:
SELECT MAX (SAL) DE SCOTT.EMP E, SCOTT.DEPT D O E.DEPTNO = D.DEPTNO ET D.DNAME подразумевает «ПРОДАЖИ»
Расширенный вариант в каждом начале, связанный с типом ответа, приводит к отражению с помощью BV в предложении WHERE:
ВЫБРАТЬ МАКС. (ПРОДАЖА) SCOTT.EMP E, SCOTT.DEPT D O E.DEPTNO = D.DEPTNO AND D.DNAME =: B1
Вопрос: что можно сделать?Что я делаю, чтобы исправить ошибку PL / SQL SP2-0552?
<местоположение сохранения журнала = "">