Description: wxSQLite3 is a C++ wrapper around the public domain SQLite 3.x database and is specifically designed for use in programs based on the wxWidgets library.
wxSQLite3 does not try to hide the underlying database, in contrary almost all special features of the current SQLite3 version 3.8.8.3 are supported, like for example the creation of user defined scalar or aggregate functions.
Since SQLite stores strings in UTF-8 encoding, the wxSQLite3 methods provide automatic conversion between wxStrings and UTF-8 strings. The methods ToUTF8 and FromUTF8 of the wxString class (available since wxWidgets 2.8.4) are used for the conversion. Special care has to be taken if external administration tools are used to modify the database contents, since not all of these tools operate in Unicode or UTF-8 mode.
wxSQLite3 includes an optional extension for SQLite supporting key based database file encryption using 128 bit AES encryption. Starting with version 1.9.6 of wxSQLite3 the encryption extension is compatible with the SQLite amalgamation source. Experimental support for 256 bit AES encryption has been added in version 1.9.8.

Symptom: Reusing a wxSQLite3Database instance of an encrypted database
for a unencrypted database causes problems, since the instance is still flagged as encrypted.
Affected version(s): 1.7.x  1.8.0
Solution:Make the following change in wxsqlite3.cpp:
Add the following statement after line 1773: m_isEncrypted = false;

Fixed in version 1.8.1

Symptom: On big endian platforms
the SQLite encryption extension included in wxSQLite3 unfortunately creates
non-portable database files since the used MD5 algorithm
does not take endianess into account as it should.
Affected version(s): 1.7.x
Solution:Upgrade to version 1.7.3.

Fixed in version 1.7.3

Symptom: In the minimal sample application meta data and encryption support
is always enabled.
Affected version(s): 1.7.1
Solution:Make the following changes in minimal.cpp:
Line 236: Change #ifdef WXSQLITE3_HAVE_METADATA to #if WXSQLITE3_HAVE_METADATA.
Line 159 and 403: Change #ifdef WXSQLITE3_HAVE_CODEC to #if WXSQLITE3_HAVE_CODEC.

Fixed in version 1.7.2

Symptom: The call to sqlite3_rekey in wxSQLite3Database::ReKey
could cause a program crash, when used to encrypt a previously unencrypted database due to a NULL
pointer exception.
Affected version(s): 1.7.0
Solution:Upgrade to version 1.7.1.