Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.30;
Скачать: CL | DM;

Вниз

Вызов Prepare для IBStoredProc не даёт эффекта   Найти похожие ветки 

 
oleg_p   (2004-12-23 11:29) [0]

Есть хранимая процедура без выходных параметров, которая используется для записи данных в базу и вызывается много-много раз (сотни тысяч) сильно тормозя . Делаю так (здесь SP - TIBStroredProc):

SP.Prepare // один раз
....
// Следующий код повторяется многократно:
SP.ParamByName("ID").AsInteger := ID;
SP.ParamByName("ASEC").AsInteger := ASEC;
SP.ParamByName("ABASE_YEAR").AsInteger := ABASE_YEAR;
SP.ParamByName("AVALUE").AsFloat := AVALUE;
SP.ExecProc;

Если убрать Prepare - время выполнения кода остаётся абсолютно тем же. Почему ???
Заметил что, после вызова ExeProc всегда Prepared = False, независимо от того, каким оно было до вызова.

Прошу вашей помощи !!! или дайте ссылку где почитать

Работаю в Delpi 7 IBX 6 Firebird 1.0.2.908


 
Соловьев ©   (2004-12-23 11:32) [1]

TIBStroredProc кажись она глюкавая.. Может 2-й сервис пак даст улучшения, но ХП можно(а наверное и нужно) дергать через IBSQL


 
Sergey13 ©   (2004-12-23 11:35) [2]

2oleg_p   (23.12.04 11:29)
ИМХО, ты не в ту сторону роешь. Имеет смысл переделать ХП так, что бы при однократном вызове он делала то, что сейчас делает за сотни тысяч раз.


 
Johnmen ©   (2004-12-23 11:39) [3]

>oleg_p  

Моё имхо - это глюкавость IBX в целом и TIBStroredProc в частности.


 
oleg_p   (2004-12-23 12:45) [4]

Заменил IBStoredProc на IBSQL - все заработало. СПАСИБО !



Страницы: 1 вся ветка

Текущий архив: 2005.01.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.037 c
14-1105456159
Petrovich_
2005-01-11 18:09
2005.01.30
C++


3-1104142318
Otari
2004-12-27 13:11
2005.01.30
Помощь !!


14-1105218443
Фагот
2005-01-09 00:07
2005.01.30
ПО для смартфонов


3-1102105323
korvin
2004-12-03 23:22
2005.01.30
Проблема с передачей параметров в хранимую процедуру


9-1097898829
Кто---то
2004-10-16 07:53
2005.01.30
GLScene Как сохранить сообщения в группах новостей ?