Гость
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Помогите с ошибкой ORA-01008: not all variables bound / 12 сообщений из 12, страница 1 из 1
31.01.2020, 12:02
    #39920952
Javl
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Приветствую всех!

Помогите разобраться, почему возникает данная ошибка, если так использовать:
OPEN cr FOR l_query USING :P1_VV1, :P1_VV2, :P1_VV3, :P1_VV4;
все работает

если делаю так:
l_num:=':P1_VV1, :P1_VV2, :P1_VV3, :P1_VV4';

OPEN cr FOR l_query USING l_num;

Ошибка not all variables bound.
...
Рейтинг: 0 / 0
31.01.2020, 12:12
    #39920955
123йй
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Javl,

параметры от строки отличить не можешь ?
...
Рейтинг: 0 / 0
31.01.2020, 12:13
    #39920957
Javl
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
123йй,
Туплю конечно, нуу бывает...
...
Рейтинг: 0 / 0
31.01.2020, 12:39
    #39920966
Javl
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Всеравно не получается, сегодня плохой день...

l_num:= l_num || ':P1_VV1, :P1_VV2, :P1_VV3, :P1_VV4';
...
Рейтинг: 0 / 0
31.01.2020, 12:48
    #39920972
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Javl
Всеравно не получается, сегодня плохой день...
Не надо зря наезжать на день.
...
Рейтинг: 0 / 0
31.01.2020, 12:53
    #39920975
Javl
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Elic
Javl
Всеравно не получается, сегодня плохой день...
Не надо зря наезжать на день.


Так день на меня влияет, вот я и торможу...

подскажите уж, как в данном случае сделать подстановку.

с запросом такой вариант прокатывает:

l_query:=l_query||' AND (p.COL1 between P1_VV1 AND P1_VV2) ';
...
Рейтинг: 0 / 0
31.01.2020, 14:21
    #39921007
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Javl
подскажите уж, как в данном случае сделать подстановку.
Для метода 4 динамического SQL нужно использовать DBMS_SQL. Или NDS внутри NDS. В любом случае, совсем не так тривиально как просто NDS.
...
Рейтинг: 0 / 0
31.01.2020, 15:33
    #39921034
Javl
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Elic,

Проблема в том, что :P1_VV1 и т.д. это переменные Апекса и мне их нужно засунуть в курсор, динамический пакет формируется в зависимости от того, заполнены эти переменные или нет и потом подставляется в курсор
open CR form l_query USING l_num;

Можно ли как то это сделать?
...
Рейтинг: 0 / 0
31.01.2020, 15:40
    #39921038
-2-
-2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Javl,

Биндуй все переменные в качестве деклараций, в запросе используй только нужные декларации.
...
Рейтинг: 0 / 0
31.01.2020, 15:42
    #39921040
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
-2-
Javl,

Биндуй все переменные в качестве деклараций, в запросе используй только нужные декларации.


А можно пример или ссылку?

А то не очень понятно, что это значит. А интересно, я так не умею (((
...
Рейтинг: 0 / 0
31.01.2020, 15:54
    #39921048
-2-
-2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
declare
  c sys_refcursor;
  a number := 1;
  b number := 2;
begin
  execute immediate '
declare
  a number := :a;
  b number := :b;
begin
  open :c for select a "only a" from dual;
end;
' using a, b, in out c;
  dbms_sql.return_result(c);
end;
/

ResultSet #1
    only a
----------
         1
...
Рейтинг: 0 / 0
02.02.2020, 09:20
    #39921419
Javl
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с ошибкой ORA-01008: not all variables bound
-2-
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
declare
  c sys_refcursor;
  a number := 1;
  b number := 2;
begin
  execute immediate '
declare
  a number := :a;
  b number := :b;
begin
  open :c for select a "only a" from dual;
end;
' using a, b, in out c;
  dbms_sql.return_result(c);
end;
/

ResultSet #1
    only a
----------
         1




Спасибо, буду пробовать!
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Помогите с ошибкой ORA-01008: not all variables bound / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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