Permalink
Browse files

updated SQLite3 engine to latest version 3.26.0

  • Loading branch information...
Arnaud Bouchez
Arnaud Bouchez committed Dec 3, 2018
1 parent fed4031 commit e6af84b13d5c2b1c43803d5f40a4ed9f9253431c
@@ -204,7 +204,7 @@
Version 1.18
- unit SQLite3.pas renamed mORMotSQLite3.pas
- updated SQLite3 engine to latest version 3.25.2
- updated SQLite3 engine to latest version 3.26.0
- BATCH adding in TSQLRestServerDB will now perform SQLite3 multi-INSERT
statements: performance boost is from 2x (mem with transaction) to 60x
(full w/out transaction) - faster than SQlite3 as external DB
BIN +3.42 KB (100%) SQLite3/sqlite3.obj
Binary file not shown.
@@ -48,7 +48,7 @@
***** END LICENSE BLOCK *****
SQLite3 3.25.2 database engine
SQLite3 3.26.0 database engine
********************************
Brand new SQLite3 library to be used with Delphi
@@ -135,7 +135,7 @@
- moved all static .obj code into new SynSQLite3Static unit
- allow either static .obj use via SynSQLite3Static or external .dll linking
using TSQLite3LibraryDynamic to bind all APIs to the global sqlite3 variable
- updated SQLite3 engine to latest version 3.25.2
- updated SQLite3 engine to latest version 3.26.0
- fixed: internal result cache is now case-sensitive for its SQL key values
- raise an ESQLite3Exception if DBOpen method is called twice
- added TSQLite3ErrorCode enumeration and sqlite3_resultToErrorCode()
@@ -1286,7 +1286,7 @@ TSQLite3Library = class
close: function(DB: TSQLite3DB): integer; cdecl;

/// Return the version of the SQLite database engine, in ascii format
// - currently returns '3.25.2', when used with our SynSQLite3Static unit
// - currently returns '3.26.0', when used with our SynSQLite3Static unit
// - if an external SQLite3 library is used, version may vary
// - you may use the VersionText property (or Version for full details) instead
libversion: function: PUTF8Char; cdecl;
@@ -1,4 +1,4 @@
/// SQLite3 3.25.2 Database engine - statically linked for Windows/Linux
/// SQLite3 3.26.0 Database engine - statically linked for Windows/Linux
// - this unit is a part of the freeware Synopse mORMot framework,
// licensed under a MPL/GPL/LGPL tri-license; version 1.18
unit SynSQLite3Static;
@@ -77,7 +77,7 @@
Version 1.18
- initial revision, extracted from SynSQLite3.pas unit
- updated SQLite3 engine to latest version 3.25.2
- updated SQLite3 engine to latest version 3.26.0
- now all sqlite3_*() API calls are accessible via sqlite3.*()
- our custom file encryption is now called via sqlite3.key() - i.e. official
SQLite Encryption Extension (SEE) sqlite3_key() API - and works for database
@@ -500,6 +500,18 @@ function strcspn(str,reject: PAnsiChar): integer; cdecl;
result := SynCommons.strcspn(str,reject); // use SSE4.2 if available
end;

function strrchr(s: PAnsiChar; c: AnsiChar): PAnsiChar; cdecl;
{$ifdef FPC}public name{$ifdef CPU64}'strrchr'{$else}'_strrchr'{$endif};{$endif}
begin // simple full pascal version of the standard C library function
result := nil;
if s<>nil then
while s^<>#0 do begin
if s^=c then
result := s;
inc(s);
end;
end;

function memcmp(p1, p2: pByte; Size: integer): integer; cdecl; { always cdecl }
{$ifdef FPC}
public name{$ifdef CPU64}'memcmp'{$else}'_memcmp'{$endif};
@@ -531,9 +543,8 @@ function memcmp(p1, p2: pByte; Size: integer): integer; cdecl; { always cdecl }

function strncmp(p1, p2: PByte; Size: integer): integer; cdecl; { always cdecl }
{$ifdef FPC}public name{$ifdef CPU64}'strncmp'{$else}'_strncmp'{$endif};{$endif}
// a fast full pascal version of the standard C library function
var i: integer;
begin
begin // a fast full pascal version of the standard C library function
for i := 1 to Size do begin
result := p1^-p2^;
if (result<>0) or (p1^=0) then
@@ -1124,7 +1135,7 @@ function sqlite3_trace_v2(DB: TSQLite3DB; Mask: integer; Callback: TSQLTraceCall

const
// error message if statically linked sqlite3.o(bj) does not match this
EXPECTED_SQLITE3_VERSION = {$ifdef ANDROID}''{$else}'3.25.2'{$endif};
EXPECTED_SQLITE3_VERSION = {$ifdef ANDROID}''{$else}'3.26.0'{$endif};

constructor TSQLite3LibraryStatic.Create;
var error: RawUTF8;
@@ -1117,7 +1117,6 @@ TComplexNumber = class(TPersistent)

/// a record used by IComplexCalculator.EchoRecord
TConsultaNav = packed record
public
MaxRows, Row0, RowCount: int64;
IsSQLUpdateBack, EOF: boolean;
end;
@@ -1 +1 @@
'1.18.4894'
'1.18.4899'
BIN +3.87 KB (100%) static/arm-linux/sqlite3.o
Binary file not shown.
BIN +3.7 KB (100%) static/i386-darwin/libsqlite3.a
Binary file not shown.
BIN +3.69 KB (100%) static/i386-darwin/sqlite3.o
Binary file not shown.
BIN +4.04 KB (100%) static/i386-linux/sqlite3.o
Binary file not shown.
BIN +3.3 KB (100%) static/i386-win32/sqlite3.o
Binary file not shown.
BIN +4.64 KB (100%) static/x86_64-darwin/libsqlite3.a
Binary file not shown.
BIN +4.64 KB (100%) static/x86_64-darwin/sqlite3.o
Binary file not shown.
BIN +4.43 KB (100%) static/x86_64-linux/sqlite3.o
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN +2.86 KB (100%) static/x86_64-win64/sqlite3.o
Binary file not shown.

0 comments on commit e6af84b

Please sign in to comment.