Update of /cvsroot/instantobjects/Source/Brokers/UIB
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7554/Brokers/UIB
Modified Files:
InstantUIB.pas
Log Message:
changes related to the statement cache
Index: InstantUIB.pas
===================================================================
RCS file: /cvsroot/instantobjects/Source/Brokers/UIB/InstantUIB.pas,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** InstantUIB.pas 17 Dec 2004 11:25:11 -0000 1.4
--- InstantUIB.pas 3 Feb 2005 16:51:28 -0000 1.5
***************
*** 108,112 ****
end;
! TInstantUIBBroker= class(TInstantSQLBroker)
private
function GetDialect: Integer;
--- 108,112 ----
end;
! TInstantUIBBroker = class(TInstantSQLBroker)
private
function GetDialect: Integer;
***************
*** 409,426 ****
Query: TJvUIBDataSet;
begin
! Query := TJvUIBDataSet.Create(NIl);
! with Query do
! begin
! Database := Connector.Connection.Database;
! FetchBlobs := True;
! OnError := etmStayIn;
! OnClose := etmStayIn;
! SQL.Text := AStatement;
! Transaction := Connector.Transaction;
! UniDirectional := True;
if Assigned(AParams) then
AssignDataSetParams(Query, AParams);
end;
- Result := Query;
end;
--- 409,428 ----
Query: TJvUIBDataSet;
begin
! Query := TJvUIBDataSet.Create(nil);
! try
! Query.Database := Connector.Connection.Database;
! Query.FetchBlobs := True;
! Query.OnError := etmStayIn;
! Query.OnClose := etmStayIn;
! Query.SQL.Text := AStatement;
! Query.Transaction := Connector.Transaction;
! Query.UniDirectional := True;
if Assigned(AParams) then
AssignDataSetParams(Query, AParams);
+ Result := Query;
+ except
+ Query.Free;
+ raise;
end;
end;
***************
*** 456,466 ****
function TInstantUIBBroker.Execute(const AStatement: string;
AParams: TParams): Integer;
begin
! with CreateDataSet(AStatement, AParams) as TJvUIBDataSet do
try
! Execute;
! Result := RowsAffected;
finally
! Free;
end;
end;
--- 458,470 ----
function TInstantUIBBroker.Execute(const AStatement: string;
AParams: TParams): Integer;
+ var
+ DataSet: TJvUIBDataSet;
begin
! DataSet := AcquireDataSet(AStatement, AParams) as TJvUIBDataSet;
try
! DataSet.Execute;
! Result := DataSet.RowsAffected;
finally
! ReleaseDataSet(DataSet);
end;
end;
|