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

Вниз

ошибка при повторном открытиии ADOStoredProc   Найти похожие ветки 

 
Кирей   (2009-07-28 14:18) [0]

Первый раз пытаюсь работать с хранимыми процедурами. При первом вызове процедуры, отрабатывает все отлично, а при повторном - ошибка "Access violation at address 4dd63404 in module "sqloledb.dll". Read of address 00000018"
with ADOStoredProc1 do
  begin
   Close;
   ProcedureName:="poslug_add";
   Parameters.Refresh;
   Parameters.ParamByName("@rslist").Value:=adotable6.FieldValues["id"];
   Parameters.ParamByName("@rsposl").Value:=trim(ch);
   Prepared := True;
   ExecProc;
   close;
  end;

Что я сделал неправильно?


 
clickmaker ©   (2009-07-28 14:32) [1]

а close-то зачем?
close нужен, если open


 
Кирей   (2009-07-28 14:41) [2]

убрал, все равно эта ошибка


 
Anatoly Podgoretsky ©   (2009-07-28 14:42) [3]

Объект не создан.


 
Кирей   (2009-07-28 14:45) [4]


> Объект не создан.

Не знаю как исправить, помогите плз.


 
Anatoly Podgoretsky ©   (2009-07-28 14:46) [5]

Невозможно, приведено недостаточно информации.


 
Кирей   (2009-07-28 14:50) [6]

Сервер MS SQL Server 2000
Хранимая процедура
CREATE PROCEDURE dbo.poslug_add(@rslist int, @rsposl char(15))
AS
begin
INSERT INTO list_poslug
                     (id_list, id_usl, name, cena, pidstava, norma, norma2, norma3, master1, master2, master3, mastermoney, mastermoney2, mastermoney3, norma_avto)
SELECT     @rslist AS id_list, poslugi.id_usl AS id_usl, poslugi.name AS name, poslugi.summa AS cena, poslugi.pidstava, poslugi.norma, poslugi.norma2,
                     poslugi.norma3, poslugi.master1, poslugi.master2, poslugi.master3, insps.zarplata AS mastermoney, insps2.zarplata AS mastermoney2,
                     insps3.zarplata AS mastermoney3, poslugi.norma_avto
FROM         SP_poslug poslugi LEFT OUTER JOIN
                     SP_insp insps ON insps.id_insp = poslugi.master1 LEFT OUTER JOIN
                     SP_insp insps2 ON insps2.id_insp = poslugi.master2 LEFT OUTER JOIN
                     SP_insp insps3 ON insps3.id_insp = poslugi.master3
WHERE     (poslugi.id_usl IN (select num from Temp_tranzit  where komp=@rsposl))
end
GO

Что еще нужно, говорите.


 
Кирей   (2009-07-28 16:11) [7]

разобрался,  Prepared := True; было лишнее


 
Ega23 ©   (2009-07-28 16:46) [8]


> разобрался,  Prepared := True; было лишнее


Нет, не лишнее.
А вот в твоём коде Parameters.Refresh; - вот это, походу, лишнее.



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
15-1249283477
Kerk
2009-08-03 11:11
2009.10.04
Изречения великого руководителя полководца Ким Чен Ира


3-1227770092
greg123
2008-11-27 10:14
2009.10.04
Как задать колонку, по кот. нужно сортировать результат в EhGrid


2-1248940531
ford
2009-07-30 11:55
2009.10.04
Сохранить файл в ворде


2-1244576320
новичок13
2009-06-09 23:38
2009.10.04
прозрачна форма но не прозрачная картинка


1-1218225470
Delpher!
2008-08-08 23:57
2009.10.04
Как залить изображение на IPicture (с помощью Delphi)?