diff --git a/Examples/Delphi/Main.pas b/Examples/Delphi/Main.pas index ee2c2d8..b64a554 100644 --- a/Examples/Delphi/Main.pas +++ b/Examples/Delphi/Main.pas @@ -3,8 +3,7 @@ unit Main; interface uses - Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, - Dialogs, StdCtrls, ExtCtrls; + Windows, SysUtils, Classes, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm_Main = class(TForm) @@ -35,7 +34,8 @@ begin // Delete database if it already exists DeleteFile('artists.db'); - // Create datatbase and fill it with example data + // Create database and fill it with example data + Screen.Cursor := crHourGlass; DB := TSQLite3Database.Create; try DB.Open('artists.db'); @@ -163,8 +163,11 @@ begin finally Stmt.Free; end; + + ShowMessage('Database created.'); finally DB.Free; + Screen.Cursor := crDefault; end; end; diff --git a/Examples/Lazarus/main.lfm b/Examples/Lazarus/main.lfm index 5c25080..a4f7b16 100644 --- a/Examples/Lazarus/main.lfm +++ b/Examples/Lazarus/main.lfm @@ -7,7 +7,7 @@ object Form_Main: TForm_Main ClientHeight = 396 ClientWidth = 657 Position = poScreenCenter - LCLVersion = '1.1' + LCLVersion = '1.0.12.0' object Memo_Result: TMemo Left = 154 Height = 396 diff --git a/Examples/Lazarus/main.pas b/Examples/Lazarus/main.pas index 8ab5732..db7250b 100644 --- a/Examples/Lazarus/main.pas +++ b/Examples/Lazarus/main.pas @@ -42,7 +42,8 @@ begin // Delete database if it already exists DeleteFile('artists.db'); - // Create datatbase and fill it with example data + // Create database and fill it with example data + Screen.Cursor := crHourGlass; DB := TSQLite3Database.Create; try DB.Open('artists.db'); @@ -170,8 +171,11 @@ begin finally Stmt.Free; end; + + ShowMessage('Database created.'); finally DB.Free; + Screen.Cursor := crDefault; end; end; diff --git a/Source/SQLite3.pas b/Source/SQLite3.pas index 20eb351..0d540a1 100644 --- a/Source/SQLite3.pas +++ b/Source/SQLite3.pas @@ -1,8 +1,8 @@ { SQLite for Delphi and FreePascal/Lazarus - Copyright 2010-2012 Yury Plashenkov - http://www.indasoftware.com/sqlite/ + Copyright 2010-2013 Yury Plashenkov + http://www.plashenkov.com/projects/sqlite/ SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. The source code for diff --git a/Source/SQLite3Utils.pas b/Source/SQLite3Utils.pas index 88f19e1..eadb474 100644 --- a/Source/SQLite3Utils.pas +++ b/Source/SQLite3Utils.pas @@ -1,8 +1,8 @@ { SQLite for Delphi and FreePascal/Lazarus - Copyright 2010-2012 Yury Plashenkov - http://www.indasoftware.com/sqlite/ + Copyright 2010-2013 Yury Plashenkov + http://www.plashenkov.com/projects/sqlite/ SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. The source code for @@ -33,7 +33,7 @@ unit SQLite3Utils; {$MODE DELPHI} {$ENDIF} -{$WARN SYMBOL_DEPRECATED OFF} +{ $WARN SYMBOL_DEPRECATED OFF} interface @@ -44,7 +44,8 @@ function FloatToSQLStr(Value: Extended): WideString; implementation -uses SysUtils; +uses + {$IFNDEF FPC}Windows,{$ENDIF} SysUtils; function StrToUTF8(const S: WideString): AnsiString; begin @@ -82,15 +83,15 @@ end; function FloatToSQLStr(Value: Extended): WideString; var - SaveSeparator: Char; + FS: TFormatSettings; begin - SaveSeparator := DecimalSeparator; - DecimalSeparator := '.'; - try - Result := FloatToStr(Value); - finally - DecimalSeparator := SaveSeparator; - end; + {$IFDEF FPC} + FS := DefaultFormatSettings; + {$ELSE} + GetLocaleFormatSettings(GetThreadLocale, FS); + {$ENDIF} + FS.DecimalSeparator := '.'; + Result := FloatToStr(Value, FS); end; end. diff --git a/Source/SQLite3Wrap.pas b/Source/SQLite3Wrap.pas index de75668..aaeb84a 100644 --- a/Source/SQLite3Wrap.pas +++ b/Source/SQLite3Wrap.pas @@ -1,8 +1,8 @@ { SQLite for Delphi and FreePascal/Lazarus - Copyright 2010-2012 Yury Plashenkov - http://www.indasoftware.com/sqlite/ + Copyright 2010-2013 Yury Plashenkov + http://www.plashenkov.com/projects/sqlite/ SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. The source code for @@ -102,6 +102,8 @@ type procedure ClearBindings; function Step: Integer; + procedure Reset; + function StepAndReset: Integer; function ColumnCount: Integer; function ColumnName(const ColumnIndex: Integer): WideString; @@ -113,9 +115,6 @@ type function ColumnBlob(const ColumnIndex: Integer): Pointer; function ColumnBytes(const ColumnIndex: Integer): Integer; - procedure Reset; - procedure StepAndReset; - property Handle: PSQLite3Stmt read FHandle; property OwnerDatabase: TSQLite3Database read FOwnerDatabase; end; @@ -140,7 +139,8 @@ type implementation -uses SQLite3Utils; +uses + SQLite3Utils; resourcestring SErrorMessage = 'SQLite3 error: %s'; @@ -390,9 +390,9 @@ begin Result := sqlite3_step(FHandle); end; -procedure TSQLite3Statement.StepAndReset; +function TSQLite3Statement.StepAndReset: Integer; begin - Step; + Result := Step; Reset; end;