Browse Source

--- Merging r20405 into '.':
U packages/fcl-db/src/sqldb/sqldb.pp
--- Merging r20424 into '.':
U packages/fcl-db/src/export/fpdbexport.pp
U packages/fcl-db/src/base/dataset.inc
U packages/fcl-db/src/base/db.pas
--- Merging r20458 into '.':
G packages/fcl-db/src/base/dataset.inc

# revisions: 20405,20424,20458
------------------------------------------------------------------------
r20405 | marco | 2012-02-22 22:01:11 +0100 (Wed, 22 Feb 2012) | 2 lines
Changed paths:
M /trunk/packages/fcl-db/src/sqldb/sqldb.pp

* Add millisecs to datetime parameters, Mantis #20616. Patch by Lacak2.

------------------------------------------------------------------------
------------------------------------------------------------------------
r20424 | marco | 2012-02-25 11:08:01 +0100 (Sat, 25 Feb 2012) | 2 lines
Changed paths:
M /trunk/packages/fcl-db/src/base/dataset.inc
M /trunk/packages/fcl-db/src/base/db.pas
M /trunk/packages/fcl-db/src/export/fpdbexport.pp

* dataset.Bookmark changed to TBookMark.

------------------------------------------------------------------------
------------------------------------------------------------------------
r20458 | marco | 2012-03-01 22:39:01 +0100 (Thu, 01 Mar 2012) | 2 lines
Changed paths:
M /trunk/packages/fcl-db/src/base/dataset.inc

* Memleak fixes, Patch by Jesus Reyes. Mantis #21403

------------------------------------------------------------------------

git-svn-id: branches/fixes_2_6@20983 -

marco 13 years ago
parent
commit
24618ab0a6

+ 4 - 1
packages/fcl-db/src/base/dataset.inc

@@ -1582,7 +1582,7 @@ Procedure TDataset.DoInsertAppend(DoAppend : Boolean);
 
   procedure DoInsert(DoAppend : Boolean);
 
-  Var BookBeforeInsert : TBookmarkStr;
+  Var BookBeforeInsert : TBookmark;
       TempBuf : pointer;
 
   begin
@@ -1624,7 +1624,10 @@ Procedure TDataset.DoInsertAppend(DoAppend : Boolean);
     // 1-apr-06, JvdS: It just sets the bookmark of the newly inserted record to the place
     // where the record should be inserted. So it is ok.
     if FRecordcount > 0 then
+      begin
       SetBookMarkData(ActiveBuffer,pointer(BookBeforeInsert));
+      FreeBookmark(BookBeforeInsert);
+      end;
     end;
 
   InternalInsert;

+ 1 - 1
packages/fcl-db/src/base/db.pas

@@ -1614,7 +1614,7 @@ type
     function UpdateStatus: TUpdateStatus; virtual;
     property BlockReadSize: Integer read FBlockReadSize write SetBlockReadSize;
     property BOF: Boolean read FBOF;
-    property Bookmark: TBookmarkStr read GetBookmarkStr write SetBookmarkStr;
+    property Bookmark: TBookmark read GetBookmark write GotoBookmark;
     property CanModify: Boolean read GetCanModify;
     property DataSource: TDataSource read GetDataSource;
     property DefaultFields: Boolean read FDefaultFields;

+ 1 - 1
packages/fcl-db/src/export/fpdbexport.pp

@@ -702,7 +702,7 @@ Function TCustomDatasetExporter.Execute : Integer;
 
 Var
   B : Boolean;
-  BM : TBookMarkStr;
+  BM : TBookMark;
 
 begin
   Result:=0;

+ 4 - 4
packages/fcl-db/src/sqldb/sqldb.pp

@@ -509,7 +509,7 @@ const DefaultSQLFormatSettings : TFormatSettings = (
   TimeAMString: '';
   TimePMString: '';
   ShortTimeFormat: 'hh:nn:ss';
-  LongTimeFormat: 'hh:nn:ss';
+  LongTimeFormat: 'hh:nn:ss.zzz';
   ShortMonthNames: ('','','','','','','','','','','','');
   LongMonthNames: ('','','','','','','','','','','','');
   ShortDayNames: ('','','','','','','');
@@ -703,9 +703,9 @@ function TSQLConnection.GetAsSQLText(Field : TField) : string;
 begin
   if (not assigned(field)) or field.IsNull then Result := 'Null'
   else case field.DataType of
-    ftString   : Result := '''' + field.asstring + '''';
+    ftString   : Result := QuotedStr(Field.AsString);
     ftDate     : Result := '''' + FormatDateTime('yyyy-mm-dd',Field.AsDateTime,FSqlFormatSettings) + '''';
-    ftDateTime : Result := '''' + FormatDateTime('yyyy-mm-dd hh:nn:ss',Field.AsDateTime,FSqlFormatSettings) + '''';
+    ftDateTime : Result := '''' + FormatDateTime('yyyy-mm-dd hh:nn:ss.zzz',Field.AsDateTime,FSqlFormatSettings) + '''';
     ftTime     : Result := QuotedStr(TimeIntervalToString(Field.AsDateTime));
   else
     Result := field.asstring;
@@ -722,7 +722,7 @@ begin
     ftString   : Result := QuotedStr(Param.AsString);
     ftDate     : Result := '''' + FormatDateTime('yyyy-mm-dd',Param.AsDateTime,FSQLFormatSettings) + '''';
     ftTime     : Result := QuotedStr(TimeIntervalToString(Param.AsDateTime));
-    ftDateTime : Result := '''' + FormatDateTime('yyyy-mm-dd hh:nn:ss', Param.AsDateTime, FSQLFormatSettings) + '''';
+    ftDateTime : Result := '''' + FormatDateTime('yyyy-mm-dd hh:nn:ss.zzz', Param.AsDateTime, FSQLFormatSettings) + '''';
     ftCurrency,
     ftBcd      : Result := CurrToStr(Param.AsCurrency, FSQLFormatSettings);
     ftFloat    : Result := FloatToStr(Param.AsFloat, FSQLFormatSettings);