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

Вниз

При использовании компонента ADO возникает ошибка   Найти похожие ветки 

 
r9000   (2004-05-27 09:53) [0]

Добрый день!

Не могли бы вы подсказать? Пользуюсь компонентом ADO при написании
procedure TForm1.FormCreate(Sender: TObject);
var sd,sm,sg,s4: string;
   G,M,D: word;
   i: integer;
begin
ADOConnection1.Connected:=true;
ADOQuery1.Close;
   ADOQuery1.SQL.Clear;
   ADOQuery1.SQL.Add("select * from Ats_cod1");
   try
   ADOQuery1.Open;
   except
   end;
DecodeDate(now,G,M,D);
sg:=inttostr(G);
sm:=inttostr(M);
sd:=inttostr(D);
s4:= sm +"."+ sd +"."+ sg +" "+timetostr(time);

  ADOQuery1.Close;
   ADOQuery1.SQL.Clear;
s3:="insert into Ats_snmp(Num_ats,Dt_post,P_state,P_categ,P_code,P_sever,P_service,P_unit,P_type,P_cageslot,P_port,P_entindex,P_sdh,P_tim edate,P_alarmname,P_atmslot,P_atmport,P_atmvpi,P_atmvci,P_origtype,P_alarmid)";
   s3:=s3+"VALUES ("""","""+s4+""",""0"",""9"",""94"",""2"",""0"",""32"",""3"",""0"",""255"","""",""2170884"",""946737494"","""",""255""," "255"",""0"",""0"",""4"",""186"") ";

ADOQuery1.SQL.Add(s3);
   try

   ADOQuery1.ExecSQL;
   except

   end;

возникает после ADOQuery1.ExecSQL ошибка:
"raised exception  class EAccessViolation with message "Access violation at  address 1F453E6E in module msado15.dll""
Что делать? Этот же код для Query1 отрабатывает нормально.


 
bushmen ©   (2004-05-27 10:07) [1]

Размещать компоненты доступа к базе данных надо в TDataModule, а не на форме


 
YurikGl ©   (2004-05-27 10:38) [2]

Поставь на OnShow.

При выполнении события OnCreate ADOQuery1 еще не создан.


 
sniknik ©   (2004-05-27 10:44) [3]

дату задавай так
s4:= sg+sm+sd+" "+timetostr(time);
или еще лутше прям в запросе
s3:=s3+"VALUES ("""",GetDate(),""0"",""9""...
без своих вычислений. и, пробелы встявляй иногда (s3+"_VALUES... (пробел вместо "_"!)), а числа не строками задавай, и пустое значение если это не пустая строка убери... и вообще все переделай (! ;о)), вместо Query Command)

> При выполнении события OnCreate ADOQuery1 еще не создан.
если на этой же форме лежит то создан.


 
Плохиш   (2004-05-27 10:44) [4]


> YurikGl ©   (27.05.04 10:38) [2]
> При выполнении события OnCreate ADOQuery1 еще не создан.

Давно с такими утверждениями сюда не захаживали


 
Семен Сорокин ©   (2004-05-27 10:45) [5]

r9000   (27.05.04 09:53)  
попробуй использовать параметры в запросе.


 
YurikGl ©   (2004-05-27 10:48) [6]

Плохиш   (27.05.04 10:44) [4]

Sorry, еще не проснулся


 
r9000   (2004-05-28 07:04) [7]

Я нашел почему выдается ошибка! Оказывается, почему то полетели драйвера OLE DB Provieder for ODBC drivers. Поставив вместо него
OLE DB Provieder for SQL Server программа отработала нормально. Всем спасибо за советы.



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

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

Наверх




Память: 0.48 MB
Время: 0.038 c
3-1085568062
DCoder
2004-05-26 14:41
2004.06.20
Какую выбрать СУБД и технологию доступа?


1-1086279022
Игорь
2004-06-03 20:10
2004.06.20
Как сделать компьютерный экзамен на Delphi 6.0


1-1086697377
Neo09
2004-06-08 16:22
2004.06.20
Как узнать на сколько процентов скопирован файл?


14-1085942124
RealRascal
2004-05-30 22:35
2004.06.20
Наши в Mathcad?


1-1086075417
V-Isa
2004-06-01 11:36
2004.06.20
Ребята, подскажите с чего начать.