如何实现数据库访问的短连接,完全断开再打开

hohoxcn 2006-12-11 11:55:48
用Adoconnection定义了一个数据库连接DBConn,配制好后打开Open.执行Execute。获取数据后关闭连接close, connected=false。待需要时再打开Open,执行Execute.
但发现关闭连接后,不Open,仍然可以Execute。请高手指点一条真正断开连接,然后可以再连数据库的方法!谢谢谢谢!
...全文
129 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
老冯 2006-12-11
  • 打赏
  • 举报
回复
给你一个真正断开的例子:

var
Obj: IBusOrder;
MConnection: TADOConnection;
MQuery: TADOQuery;
begin
Result := False;
Visited.QueryInterface(IBusOrder, Obj);
if Obj <> nil then
begin
CoInitialize(nil);
MConnection := TADOConnection.Create(nil);
MConnection.ConnectionString := DBConnection;
MConnection.LoginPrompt := False;
MConnection.Open;
MQuery := TADOQuery.Create(nil);
with MQuery do
begin
try
Connection := MConnection;
MConnection.BeginTrans;
try
SQL.Text := ' Insert Into TPTMIS_BusOrderInfo(FBusOrderID, '+
' FBusOrderName, '+
' FLineID, '+
' FLineName, '+
' FLeaveTime, '+
' FSeatingPreset, '+
' FChildrenPreset, '+
' FIntervalDays, '+
' FOriginalDate ) '+
' Values(:FBusOrderID, '+
' :FBusOrderName, '+
' :FLineID, '+
' :FLineName, '+
' :FLeaveTime, '+
' :FSeatingPreset, '+
' :FChildrenPreset, '+
' :FIntervalDays, '+
' :FOriginalDate ) ';
Parameters.ParamByName('FBusOrderID').Value := Obj.BusOrderID;
Parameters.ParamByName('FBusOrderName').Value := Obj.BusOrderName;
Parameters.ParamByName('FLineID').Value := Obj.LineID;
Parameters.ParamByName('FLineName').Value := Obj.LineName;
Parameters.ParamByName('FLeaveTime').Value := FormatDateTime('HH:MMMM', Obj.LeaveTime);
Parameters.ParamByName('FSeatingPreset').Value := Obj.SeatingPreSet;
Parameters.ParamByName('FChildrenPreset').Value := Obj.ChildrenPreSet;
Parameters.ParamByName('FIntervalDays').Value := Obj.IntervalDays;
Parameters.ParamByName('FOriginalDate').Value := Obj.OriginalDate;
ExecSQL;
MConnection.CommitTrans;
Result := True;
except
MConnection.RollbackTrans;
Result := False;
end;
finally
MQuery.Free;
MConnection.Free;
end;
end;
end;
end;

(我的工程应用代码)

2,495

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧