powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / StoredProc
10 сообщений из 10, страница 1 из 1
StoredProc
    #32072953
Mich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hi all!
Необходимо в RunTime создать StoredProc. Пишу:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SP:=TStoredProc.Create(Parent);
SP.DataBaseName:='SUN';
SP.StoredProcName:='POST';
SP.Params.Add;
SP.Params[ 0 ].DataType:=ftInteger;
SP.Params[ 0 ].ParamType:=ptInput;
SP.Params[ 0 ].AsInteger:= 123 ;
SP.Prepare;
SP.ExecProc;

На ExecProc выкидывает excrption 'Could not find object' . Используется BDE. Не надо говорить: BDE=отстой, ибо это не мой выбор.
Ну чего ему еще нужно!!!???
...
Рейтинг: 0 / 0
StoredProc
    #32072955
Mich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Забыл сказать: SP с теми же параметрами в DesignTime работает отлично.
...
Рейтинг: 0 / 0
StoredProc
    #32072959
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Субд какая?
SP возвращает что-нить?
Делфя какая.
Возьмите плиз во внимание что надо хотя бы это сообщить )))
...
Рейтинг: 0 / 0
StoredProc
    #32072967
Mich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извиняй, от злости на все перестал адекватно воспринимать действительность ;)
СУБД Oracle 8.1.5, Delphi 5. Хранимя процедура ничего не возвращает (пока), но, повторюсь, проблема именно при динамическом создании , в статике все работает.
...
Рейтинг: 0 / 0
StoredProc
    #32072989
JZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй сделать

SP:=TStoredProc.Create(Parent);
SP.DataBaseName:='SUN';
SP.StoredProcName:='POST';
SP.Prepare;
SP.Params.Items[0].AsInteger:=123;
SP.ExecProc;

на сколько я помню когда при SP.Prepare ве параметры встают сами собой и не надо их описывать..
...
Рейтинг: 0 / 0
StoredProc
    #32073025
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вероятнее всего трабла в Local Settings твоих виндов...
1. Запусти SQL Monitor - погляди какую именно команду посылает прога при динамеческом вызове SP. Обрати особое внимание на параметры.
2. Я в таких случаях не парюсь - запихиваю все, что надо в TQuery.SQL и делаю TQuery.ExecSQl при невозвращении данных или Open в противном случае.
Вот.
...
Рейтинг: 0 / 0
StoredProc
    #32073047
Mich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SQL Monitor молчит. Молчит и Tracer for Oracle, т.е ошибка именно в Delphi. Select не подходит, поскольку следуюoщая версия будет возвращать курсор.
...
Рейтинг: 0 / 0
StoredProc
    #32073052
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во блин, извеняйка - забыл.
Ты заюзал TStoredProc.Params.Add, а не TStoredProc.Params.AddParams )))
...
Рейтинг: 0 / 0
StoredProc
    #32073058
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пишу на вскидку, юзабельно помоему...
Попробуй так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
var sp :TStoredProc;
begin
  sp := TStoredProc.Create (nil);
  try
    DatabaseName := 'DB';
    StoreProcName := 'KAKA';
    Params.CreateParam (ftInteger, 'ROW_ID', ptOutput);
    Prepare;
    Result := ParamByName('ROW_ID').AsInteger;
    ExecProc;
  finally
    UnPrepare;
    sp.Free;
  end;
end;
...
Рейтинг: 0 / 0
StoredProc
    #32073060
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
with sp do ... забыл поставить.
ЗЫ.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / StoredProc
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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