Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / В чем может быть проблема при ORA-01008 not all variables bound / 12 сообщений из 12, страница 1 из 1
27.01.2005, 14:19
    #32887113
M. B.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
Ошибка:
ORA-01008 not all variables bound

Cause: A SQL statement containing substitution variables was executed without all variables bound. All substitution variables must have a substituted value before the SQL statement is executed.

при вызове хранимой продуры (точнее функции)
begin
:ret := func1( :par1, :par2 );
end;

все 3 переменные до этого объявлены
...
Рейтинг: 0 / 0
27.01.2005, 14:21
    #32887121
M. B.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
что значит должны быть связаны?
...
Рейтинг: 0 / 0
27.01.2005, 14:25
    #32887132
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
Откуда вызываешь? Как в твоём понимании выглядит "объявление" переменных?
С понятием bind-переменных вообще знаком?
...
Рейтинг: 0 / 0
27.01.2005, 14:33
    #32887165
M. B.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
Вызываю из Дельфы
Объявлены - значит есть в секции declare
вот про бинд подробнее хотелось бы
...
Рейтинг: 0 / 0
27.01.2005, 15:04
    #32887273
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
M. B.Вызываю из ДельфыБиблиотека доступа к Oracle-у? Компонент?
M. B.Объявлены - значит есть в секции declareВ Delphi нет секции declare :)
M. B.вот про бинд подробнее хотелось быВсё, что предваряется двоеточием, и есть bind-переменные. Их надо связывать с переменными в программе. В Delphi это обычно делается посредством Params.
...
Рейтинг: 0 / 0
27.01.2005, 15:28
    #32887357
M. B.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
Использую DOA 3.4.2
Объявлены методом DeclareVariable

Фишка в том что здесь :ret типа otCursor (курсор), и вот конкретно на эту
ф-цию он и ругается - остальные процедуры работают без всякого бинда,
т.е. при вызове proc1(:par1,:par2) где параметры не являются курсором - все ОК
...
Рейтинг: 0 / 0
27.01.2005, 15:31
    #32887374
M. B.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
Неправильно выразился - т.е. я и использую бинд-переменные как раз, но вот в случае с возвратом курсора - ошибка
может я функцию как-то не так вызываю, хотя синтаксис вроде правильный
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
27.08.2008, 18:27
    #35509465
Zinger Der GOD
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
Имел такую же проблему в FORMS 6. Не видела и все... Причем достаточно рандомно. Тоесть - два record_group, обе одинаковые, одна пашет, другая нет.. с этим сообщением..
Тоже с процедурами..
Решилось все очень просто:
NVL(:МОЕ_ЗНАЧЕНИЕ_КАКОЕТО,'любое_значение_на_случай_NULL')...

Бился очень долго..
В функциях шел возврат из функции в виде TABLE OF VARCHAR2(4000), и он использовался в IN в другом селекте. Выходило, что ничего не выходило...
поставил NVL и все потекло..

ЗЫ если вдруг кому поможет...
...
Рейтинг: 0 / 0
19.09.2008, 12:58
    #35548773
РысЪ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
господа, у меня примерно та же проблема...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
      dochash := getdocumenthash( doc );

      begin
         select commentary
         into   lbl
         from   supermag.smdatedocs
         where  id = doc.docid;
      exception
         when others then
            lbl := '';
      end;

      docid := doc.docid;
      locid := doc.locid;
      locname := doc.locname;
      createdat := doc.createdat;
      fc := doc.fc;
      headerinserttext :=
            'insert into exchange.'
         || doctable
         || 'h '
         || '           ( '
         || '             id, name, docnr, docdate, '
         || ( case doc.doctype
                when 'WI' then 'clientfcode, '
                when 'OR' then 'labels, '
                else ''
             end )
         || '              checksum'
         || '            ) '
         || '    values ( '
         || '             :locid, :locname, :docid, :createdat, '
         || ( case doc.doctype
                when 'WI' then ' :fc, '
                when 'OR' then ' :lbl, '
                else ''
             end )
         || '              :dochash)';

      execute immediate headerinserttext;
Все переменные задекларированы... пытался и так как указано, пытался и прмой подстановкой переменных с помощью using. В любом случае получаю ORA-01008
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
02.04.2012, 17:07
    #37734961
TopCore
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
Кто продолжает сталкиваться с такой проблемой в Delphi 7 , то можете проверить, в каком месте Вы объявляете свои переменные для процедуры: это нужно делать после того, как Вы добавили SQL , например, в OracleQuery .
Пример:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
with OracleQuery1 do begin
  SQL.Add('BEGIN' +
          '  SomePackage.SomeProcedure(:veriable1, :veriable2);' +
          'END;');
  DeclareVariable('veriable1', otInteger);
  DeclareVariable('veriable2', otString);
  SetVeriable('veriable1', 12345);
  SetVeriable('veriable2', '12345');
  Execute;
end;
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
12.09.2017, 15:51
    #39519948
PL SQL Новичок
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
На всякий случай напишу,
вдруг пригодится кому

Oracle supportDescription
This bug is only relevant when using Partitioned Tables
A Select query on composite partition with bind variables may fail with
"ORA-1008: not all variables bound".

Rediscovery Notes
If a select query on composite partitioned table with bind variables
fails with an unexpected ORA-604 and "ORA-1008 not all variables bound"
error then you might be encountering this bug.

Workaround
The following may help avoid the problem:
1. alter session set "_and_pruning_enabled"=false;
2. alter session set "_subquery_pruning_enabled"=false;
3. alter session set "_optimizer_table_expansion"=false;
...
Рейтинг: 0 / 0
25.12.2017, 19:57
    #39575693
xx77
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
В чем может быть проблема при ORA-01008 not all variables bound
Еще как пригодилось! Спасибо тебе большое, добрый человек! :)
Давеча словил тут ora-1008 внутри процедуры, где явных переменных привязки не было, только пакетные переменные. Таблицы с композитным секционированием. Ворк эраунд магически помог!
PL SQL НовичокНа всякий случай напишу,
вдруг пригодится кому

Oracle supportDescription
This bug is only relevant when using Partitioned Tables
A Select query on composite partition with bind variables may fail with
"ORA-1008: not all variables bound".

Rediscovery Notes
If a select query on composite partitioned table with bind variables
fails with an unexpected ORA-604 and "ORA-1008 not all variables bound"
error then you might be encountering this bug.

Workaround
The following may help avoid the problem:
1. alter session set "_and_pruning_enabled"=false;
2. alter session set "_subquery_pruning_enabled"=false;
3. alter session set "_optimizer_table_expansion"=false;
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / В чем может быть проблема при ORA-01008 not all variables bound / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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