通过网络对数据库 进行操作 突然断线 怎么处理异常
代码如下:
procedure threed_up.updateonerow(str_sql:string;ado_db:tadoquery;str_key:tstrings;str_tablename:string);
vari,i_list,i_count,i_loop:integer;
b_succ:boolean; //更新一个表中的一条记录
begin
if service_update.ADOQ_exec.RecordCount=0 then
begin service_update.ADOCom_exec.CommandText:=
insert_sql(ado_db,str_tablename);
try
service_update.ADOCom_exec.Execute ;
except
//b_succ:=false;
b_do:=false;
service_update.writeerror(datetostr(date())+' '+timetostr(time())+'插入记录到'+str_tablename+'表出错');
end;
end
else
begin service_update.ADOQ_exec.SQL.Text :='';
service_update.ADOCom_exec.CommandText:=
update_sql(ado_db,str_tablename,str_key);
try
service_update.ADOCom_exec.Execute();
except
//b_succ:=false;
b_do:=false;
service_update.writeerror(datetostr(date())+' '+timetostr(time())+'修改记录到'+str_tablename+'表出错');
end;
end;
if (str_tablename<>'OILCAN_INFO') then
begin
ado_db.Edit ;
ado_db.FieldByName(str_tag).Value :=1;
ado_db.Post ;
end;
end;end;这个过程在 网络断开 时常发现死了 请大虾帮忙找找原因 给点建议
代码如下:
procedure threed_up.updateonerow(str_sql:string;ado_db:tadoquery;str_key:tstrings;str_tablename:string);
vari,i_list,i_count,i_loop:integer;
b_succ:boolean; //更新一个表中的一条记录
begin
if service_update.ADOQ_exec.RecordCount=0 then
begin service_update.ADOCom_exec.CommandText:=
insert_sql(ado_db,str_tablename);
try
service_update.ADOCom_exec.Execute ;
except
//b_succ:=false;
b_do:=false;
service_update.writeerror(datetostr(date())+' '+timetostr(time())+'插入记录到'+str_tablename+'表出错');
end;
end
else
begin service_update.ADOQ_exec.SQL.Text :='';
service_update.ADOCom_exec.CommandText:=
update_sql(ado_db,str_tablename,str_key);
try
service_update.ADOCom_exec.Execute();
except
//b_succ:=false;
b_do:=false;
service_update.writeerror(datetostr(date())+' '+timetostr(time())+'修改记录到'+str_tablename+'表出错');
end;
end;
if (str_tablename<>'OILCAN_INFO') then
begin
ado_db.Edit ;
ado_db.FieldByName(str_tag).Value :=1;
ado_db.Post ;
end;
end;end;这个过程在 网络断开 时常发现死了 请大虾帮忙找找原因 给点建议
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货