wxSQLite3  4.3.0
Classes | Macros | Typedefs | Functions | Variables
wxsqlite3.cpp File Reference

Implementation of the wxSQLite3 class. More...

#include "wx/wxprec.h"
#include "wx/wx.h"
#include "wx/dynarray.h"
#include "wx/regex.h"
#include "wx/thread.h"
#include "wx/wxsqlite3.h"
#include "wx/wxsqlite3opt.h"
#include "sqlite3secure.h"

Classes

class  wxSQLite3DatabaseReference
 Reference counted database object (internal) More...
 
class  wxSQLite3StatementReference
 Reference counted statement object (internal) More...
 
class  wxSQLite3BlobReference
 Reference counted blob object (internal) More...
 

Macros

#define SQLITE_HAS_CODEC   1
 

Typedefs

typedef int(* sqlite3_xauth) (void *, int, const char *, const char *, const char *, const char *)
 

Functions

SQLITE_API int wxsqlite3_config (sqlite3 *db, const char *paramName, int newValue)
 
SQLITE_API int wxsqlite3_config_cipher (sqlite3 *db, const char *cipherName, const char *paramName, int newValue)
 
static int wxSQLite3FunctionContextExecAuthorizer (void *func, int type, const char *arg1, const char *arg2, const char *arg3, const char *arg4)
 
static const char * LocalMakePointerTypeCopy (wxArrayPtrVoid &ptrTypes, const wxString &pointerType)
 
wxLongLong ConvertStringToLongLong (const wxString &str, wxLongLong defValue)
 
static double wxSQLite3AtoF (const char *z)
 
static bool BackupRestoreCallback (int total, int remaining, wxSQLite3BackupProgress *progressCallback)
 

Variables

const wxChar * wxERRMSG_NODB = wxTRANSLATE("No Database opened")
 
const wxChar * wxERRMSG_NOSTMT = wxTRANSLATE("Statement not accessible")
 
const wxChar * wxERRMSG_NOMEM = wxTRANSLATE("Out of memory")
 
const wxChar * wxERRMSG_DECODE = wxTRANSLATE("Cannot decode binary")
 
const wxChar * wxERRMSG_INVALID_INDEX = wxTRANSLATE("Invalid field index")
 
const wxChar * wxERRMSG_INVALID_NAME = wxTRANSLATE("Invalid field name")
 
const wxChar * wxERRMSG_INVALID_ROW = wxTRANSLATE("Invalid row index")
 
const wxChar * wxERRMSG_INVALID_QUERY = wxTRANSLATE("Invalid scalar query")
 
const wxChar * wxERRMSG_INVALID_BLOB = wxTRANSLATE("Invalid BLOB handle")
 
const wxChar * wxERRMSG_NORESULT = wxTRANSLATE("Null Results pointer")
 
const wxChar * wxERRMSG_BIND_STR = wxTRANSLATE("Error binding string param")
 
const wxChar * wxERRMSG_BIND_INT = wxTRANSLATE("Error binding int param")
 
const wxChar * wxERRMSG_BIND_INT64 = wxTRANSLATE("Error binding int64 param")
 
const wxChar * wxERRMSG_BIND_DBL = wxTRANSLATE("Error binding double param")
 
const wxChar * wxERRMSG_BIND_BLOB = wxTRANSLATE("Error binding blob param")
 
const wxChar * wxERRMSG_BIND_DATETIME = wxTRANSLATE("Error binding date/time param")
 
const wxChar * wxERRMSG_BIND_NULL = wxTRANSLATE("Error binding NULL param")
 
const wxChar * wxERRMSG_BIND_ZEROBLOB = wxTRANSLATE("Error binding zero blob param")
 
const wxChar * wxERRMSG_BIND_POINTER = wxTRANSLATE("Error binding pointer param")
 
const wxChar * wxERRMSG_BIND_CLEAR = wxTRANSLATE("Error clearing bindings")
 
const wxChar * wxERRMSG_NOMETADATA = wxTRANSLATE("Meta data support not available")
 
const wxChar * wxERRMSG_NOCODEC = wxTRANSLATE("Encryption support not available")
 
const wxChar * wxERRMSG_NOLOADEXT = wxTRANSLATE("Loadable extension support not available")
 
const wxChar * wxERRMSG_NOINCBLOB = wxTRANSLATE("Incremental BLOB support not available")
 
const wxChar * wxERRMSG_NOBLOBREBIND = wxTRANSLATE("Rebind BLOB support not available")
 
const wxChar * wxERRMSG_NOPOINTER = wxTRANSLATE("Pointer parameter support not available")
 
const wxChar * wxERRMSG_NOSAVEPOINT = wxTRANSLATE("Savepoint support not available")
 
const wxChar * wxERRMSG_NOBACKUP = wxTRANSLATE("Backup/restore support not available")
 
const wxChar * wxERRMSG_NOWAL = wxTRANSLATE("Write Ahead Log support not available")
 
const wxChar * wxERRMSG_NOCOLLECTIONS = wxTRANSLATE("Named collection support not available")
 
const wxChar * wxERRMSG_SHARED_CACHE = wxTRANSLATE("Setting SQLite shared cache mode failed")
 
const wxChar * wxERRMSG_INITIALIZE = wxTRANSLATE("Initialization of SQLite failed")
 
const wxChar * wxERRMSG_SHUTDOWN = wxTRANSLATE("Shutdown of SQLite failed")
 
const wxChar * wxERRMSG_TEMPDIR = wxTRANSLATE("Setting temporary directory failed")
 
const wxChar * wxERRMSG_SOURCEDB_BUSY = wxTRANSLATE("Source database is busy")
 
const wxChar * wxERRMSG_DBOPEN_FAILED = wxTRANSLATE("Database open failed")
 
const wxChar * wxERRMSG_DBCLOSE_FAILED = wxTRANSLATE("Database close failed")
 
const wxChar * wxERRMSG_DBASSIGN_FAILED = wxTRANSLATE("Database assignment failed")
 
const wxChar * wxERRMSG_FINALIZE_FAILED = wxTRANSLATE("Finalize failed")
 
const wxChar * wxERRMSG_CIPHER_APPLY_FAILED = wxTRANSLATE("Application of cipher failed")
 
static const wxChar * limitCodeString []
 
static const wxChar * authCodeString []
 

Detailed Description

Implementation of the wxSQLite3 class.

Macro Definition Documentation

◆ SQLITE_HAS_CODEC

#define SQLITE_HAS_CODEC   1

Typedef Documentation

◆ sqlite3_xauth

typedef int(* sqlite3_xauth) (void *, int, const char *, const char *, const char *, const char *)

Function Documentation

◆ BackupRestoreCallback()

static bool BackupRestoreCallback ( int  total,
int  remaining,
wxSQLite3BackupProgress progressCallback 
)
static

◆ ConvertStringToLongLong()

wxLongLong ConvertStringToLongLong ( const wxString &  str,
wxLongLong  defValue 
)
inline

◆ LocalMakePointerTypeCopy()

static const char* LocalMakePointerTypeCopy ( wxArrayPtrVoid &  ptrTypes,
const wxString &  pointerType 
)
static

◆ wxsqlite3_config()

SQLITE_API int wxsqlite3_config ( sqlite3 *  db,
const char *  paramName,
int  newValue 
)

◆ wxsqlite3_config_cipher()

SQLITE_API int wxsqlite3_config_cipher ( sqlite3 *  db,
const char *  cipherName,
const char *  paramName,
int  newValue 
)

◆ wxSQLite3AtoF()

static double wxSQLite3AtoF ( const char *  z)
static

◆ wxSQLite3FunctionContextExecAuthorizer()

static int wxSQLite3FunctionContextExecAuthorizer ( void *  func,
int  type,
const char *  arg1,
const char *  arg2,
const char *  arg3,
const char *  arg4 
)
static

Variable Documentation

◆ authCodeString

const wxChar* authCodeString[]
static
Initial value:
=
{ wxS("SQLITE_COPY"), wxS("SQLITE_CREATE_INDEX"), wxS("SQLITE_CREATE_TABLE"),
wxS("SQLITE_CREATE_TEMP_INDEX"), wxS("SQLITE_CREATE_TEMP_TABLE"), wxS("SQLITE_CREATE_TEMP_TRIGGER"),
wxS("SQLITE_CREATE_TEMP_VIEW"), wxS("SQLITE_CREATE_TRIGGER"), wxS("SQLITE_CREATE_VIEW"),
wxS("SQLITE_DELETE"), wxS("SQLITE_DROP_INDEX"), wxS("SQLITE_DROP_TABLE"),
wxS("SQLITE_DROP_TEMP_INDEX"), wxS("SQLITE_DROP_TEMP_TABLE"), wxS("SQLITE_DROP_TEMP_TRIGGER"),
wxS("SQLITE_DROP_TEMP_VIEW"), wxS("SQLITE_DROP_TRIGGER"), wxS("SQLITE_DROP_VIEW"),
wxS("SQLITE_INSERT"), wxS("SQLITE_PRAGMA"), wxS("SQLITE_READ"),
wxS("SQLITE_SELECT"), wxS("SQLITE_TRANSACTION"), wxS("SQLITE_UPDATE"),
wxS("SQLITE_ATTACH"), wxS("SQLITE_DETACH"), wxS("SQLITE_ALTER_TABLE"),
wxS("SQLITE_REINDEX"), wxS("SQLITE_ANALYZE"), wxS("SQLITE_CREATE_VTABLE"),
wxS("SQLITE_DROP_VTABLE"), wxS("SQLITE_FUNCTION"), wxS("SQLITE_SAVEPOINT"),
wxS("SQLITE_RECURSIVE")
}

◆ limitCodeString

const wxChar* limitCodeString[]
static
Initial value:
=
{ wxS("SQLITE_LIMIT_LENGTH"), wxS("SQLITE_LIMIT_SQL_LENGTH"),
wxS("SQLITE_LIMIT_COLUMN"), wxS("SQLITE_LIMIT_EXPR_DEPTH"),
wxS("SQLITE_LIMIT_COMPOUND_SELECT"), wxS("SQLITE_LIMIT_VDBE_OP"),
wxS("SQLITE_LIMIT_FUNCTION_ARG"), wxS("SQLITE_LIMIT_ATTACHED"),
wxS("SQLITE_LIMIT_LIKE_PATTERN_LENGTH"), wxS("SQLITE_LIMIT_VARIABLE_NUMBER"),
wxS("SQLITE_LIMIT_TRIGGER_DEPTH"), wxS("SQLITE_LIMIT_WORKER_THREADS")
}

◆ wxERRMSG_BIND_BLOB

const wxChar* wxERRMSG_BIND_BLOB = wxTRANSLATE("Error binding blob param")

◆ wxERRMSG_BIND_CLEAR

const wxChar* wxERRMSG_BIND_CLEAR = wxTRANSLATE("Error clearing bindings")

◆ wxERRMSG_BIND_DATETIME

const wxChar* wxERRMSG_BIND_DATETIME = wxTRANSLATE("Error binding date/time param")

◆ wxERRMSG_BIND_DBL

const wxChar* wxERRMSG_BIND_DBL = wxTRANSLATE("Error binding double param")

◆ wxERRMSG_BIND_INT

const wxChar* wxERRMSG_BIND_INT = wxTRANSLATE("Error binding int param")

◆ wxERRMSG_BIND_INT64

const wxChar* wxERRMSG_BIND_INT64 = wxTRANSLATE("Error binding int64 param")

◆ wxERRMSG_BIND_NULL

const wxChar* wxERRMSG_BIND_NULL = wxTRANSLATE("Error binding NULL param")

◆ wxERRMSG_BIND_POINTER

const wxChar* wxERRMSG_BIND_POINTER = wxTRANSLATE("Error binding pointer param")

◆ wxERRMSG_BIND_STR

const wxChar* wxERRMSG_BIND_STR = wxTRANSLATE("Error binding string param")

◆ wxERRMSG_BIND_ZEROBLOB

const wxChar* wxERRMSG_BIND_ZEROBLOB = wxTRANSLATE("Error binding zero blob param")

◆ wxERRMSG_CIPHER_APPLY_FAILED

const wxChar* wxERRMSG_CIPHER_APPLY_FAILED = wxTRANSLATE("Application of cipher failed")

◆ wxERRMSG_DBASSIGN_FAILED

const wxChar* wxERRMSG_DBASSIGN_FAILED = wxTRANSLATE("Database assignment failed")

◆ wxERRMSG_DBCLOSE_FAILED

const wxChar* wxERRMSG_DBCLOSE_FAILED = wxTRANSLATE("Database close failed")

◆ wxERRMSG_DBOPEN_FAILED

const wxChar* wxERRMSG_DBOPEN_FAILED = wxTRANSLATE("Database open failed")

◆ wxERRMSG_DECODE

const wxChar* wxERRMSG_DECODE = wxTRANSLATE("Cannot decode binary")

◆ wxERRMSG_FINALIZE_FAILED

const wxChar* wxERRMSG_FINALIZE_FAILED = wxTRANSLATE("Finalize failed")

◆ wxERRMSG_INITIALIZE

const wxChar* wxERRMSG_INITIALIZE = wxTRANSLATE("Initialization of SQLite failed")

◆ wxERRMSG_INVALID_BLOB

const wxChar* wxERRMSG_INVALID_BLOB = wxTRANSLATE("Invalid BLOB handle")

◆ wxERRMSG_INVALID_INDEX

const wxChar* wxERRMSG_INVALID_INDEX = wxTRANSLATE("Invalid field index")

◆ wxERRMSG_INVALID_NAME

const wxChar* wxERRMSG_INVALID_NAME = wxTRANSLATE("Invalid field name")

◆ wxERRMSG_INVALID_QUERY

const wxChar* wxERRMSG_INVALID_QUERY = wxTRANSLATE("Invalid scalar query")

◆ wxERRMSG_INVALID_ROW

const wxChar* wxERRMSG_INVALID_ROW = wxTRANSLATE("Invalid row index")

◆ wxERRMSG_NOBACKUP

const wxChar* wxERRMSG_NOBACKUP = wxTRANSLATE("Backup/restore support not available")

◆ wxERRMSG_NOBLOBREBIND

const wxChar* wxERRMSG_NOBLOBREBIND = wxTRANSLATE("Rebind BLOB support not available")

◆ wxERRMSG_NOCODEC

const wxChar* wxERRMSG_NOCODEC = wxTRANSLATE("Encryption support not available")

◆ wxERRMSG_NOCOLLECTIONS

const wxChar* wxERRMSG_NOCOLLECTIONS = wxTRANSLATE("Named collection support not available")

◆ wxERRMSG_NODB

const wxChar* wxERRMSG_NODB = wxTRANSLATE("No Database opened")

◆ wxERRMSG_NOINCBLOB

const wxChar* wxERRMSG_NOINCBLOB = wxTRANSLATE("Incremental BLOB support not available")

◆ wxERRMSG_NOLOADEXT

const wxChar* wxERRMSG_NOLOADEXT = wxTRANSLATE("Loadable extension support not available")

◆ wxERRMSG_NOMEM

const wxChar* wxERRMSG_NOMEM = wxTRANSLATE("Out of memory")

◆ wxERRMSG_NOMETADATA

const wxChar* wxERRMSG_NOMETADATA = wxTRANSLATE("Meta data support not available")

◆ wxERRMSG_NOPOINTER

const wxChar* wxERRMSG_NOPOINTER = wxTRANSLATE("Pointer parameter support not available")

◆ wxERRMSG_NORESULT

const wxChar* wxERRMSG_NORESULT = wxTRANSLATE("Null Results pointer")

◆ wxERRMSG_NOSAVEPOINT

const wxChar* wxERRMSG_NOSAVEPOINT = wxTRANSLATE("Savepoint support not available")

◆ wxERRMSG_NOSTMT

const wxChar* wxERRMSG_NOSTMT = wxTRANSLATE("Statement not accessible")

◆ wxERRMSG_NOWAL

const wxChar* wxERRMSG_NOWAL = wxTRANSLATE("Write Ahead Log support not available")

◆ wxERRMSG_SHARED_CACHE

const wxChar* wxERRMSG_SHARED_CACHE = wxTRANSLATE("Setting SQLite shared cache mode failed")

◆ wxERRMSG_SHUTDOWN

const wxChar* wxERRMSG_SHUTDOWN = wxTRANSLATE("Shutdown of SQLite failed")

◆ wxERRMSG_SOURCEDB_BUSY

const wxChar* wxERRMSG_SOURCEDB_BUSY = wxTRANSLATE("Source database is busy")

◆ wxERRMSG_TEMPDIR

const wxChar* wxERRMSG_TEMPDIR = wxTRANSLATE("Setting temporary directory failed")