etc.c.sqlite3

enum string SQLITE_VERSION;

enum int SQLITE_VERSION_NUMBER;

enum string SQLITE_SOURCE_ID;
CAPI3REF
Compile-Time Library Version Numbers
immutable(char)* sqlite3_version;

nothrow immutable(char)* sqlite3_libversion();

nothrow immutable(char)* sqlite3_sourceid();

nothrow int sqlite3_libversion_number();
CAPI3REF
Run-Time Library Version Numbers
nothrow int sqlite3_compileoption_used(const char* zOptName);

nothrow immutable(char)* sqlite3_compileoption_get(int N);
CAPI3REF
Run-Time Library Compilation Options Diagnostics
nothrow int sqlite3_threadsafe();
CAPI3REF
Test To See If The Library Is Threadsafe
struct sqlite3;
CAPI3REF
Database Connection Handle
alias sqlite3_int64 = long;
alias sqlite3_uint64 = ulong;
nothrow int sqlite3_close(sqlite3*);
CAPI3REF
Closing A Database Connection
alias sqlite3_callback = extern (C) int function(void*, int, char**, char**) nothrow;

The type for a callback function. This is legacy and deprecated. It is included for historical compatibility and is not documented.

nothrow int sqlite3_exec(sqlite3*, const(char)* sql, int function(void*, int, char**, char**) callback, void*, char** errmsg);
CAPI3REF
One-Step Query Execution Interface
SQLITE_OK

Successful result

SQLITE_ERROR

Ditto

Generic error

SQLITE_INTERNAL

Internal logic error in SQLite

SQLITE_PERM

Access permission denied

SQLITE_ABORT

Callback routine requested an abort

SQLITE_BUSY

The database file is locked

SQLITE_LOCKED

A table in the database is locked

SQLITE_NOMEM

A malloc() failed

SQLITE_READONLY

Attempt to write a readonly database

SQLITE_INTERRUPT

Operation terminated by sqlite3_interrupt()

SQLITE_IOERR

Some kind of disk I/O error occurred

SQLITE_CORRUPT

The database disk image is malformed

SQLITE_NOTFOUND

Unknown opcode in sqlite3_file_control()

SQLITE_FULL

Insertion failed because database is full

SQLITE_CANTOPEN

Unable to open the database file

SQLITE_PROTOCOL

Database lock protocol error

SQLITE_EMPTY

Internal use only

SQLITE_SCHEMA

The database schema changed

SQLITE_TOOBIG

String or BLOB exceeds size limit

SQLITE_CONSTRAINT

Abort due to constraint violation

SQLITE_MISMATCH

Data type mismatch

SQLITE_MISUSE

Library used incorrectly

SQLITE_NOLFS

Uses OS features not supported on host

SQLITE_AUTH

Authorization denied

SQLITE_FORMAT

Not used

SQLITE_RANGE

2nd parameter to sqlite3_bind out of range

SQLITE_NOTADB

File opened that is not a database file

SQLITE_ROW

sqlite3_step() has another row ready

SQLITE_DONE

sqlite3_step() has finished executing

SQLITE_OPEN_READONLY

Ok for sqlite3_open_v2()

SQLITE_OPEN_READWRITE

Ok for sqlite3_open_v2()

SQLITE_OPEN_CREATE

Ok for sqlite3_open_v2()

SQLITE_OPEN_DELETEONCLOSE

VFS only

SQLITE_OPEN_EXCLUSIVE

VFS only

SQLITE_OPEN_AUTOPROXY

VFS only

SQLITE_OPEN_URI

Ok for sqlite3_open_v2()

SQLITE_OPEN_MEMORY

Ok for sqlite3_open_v2()

SQLITE_OPEN_MAIN_DB

VFS only

SQLITE_OPEN_TEMP_DB

VFS only

SQLITE_OPEN_TRANSIENT_DB

VFS only

SQLITE_OPEN_MAIN_JOURNAL

VFS only

SQLITE_OPEN_TEMP_JOURNAL

VFS only

SQLITE_OPEN_SUBJOURNAL

VFS only

SQLITE_OPEN_SUPER_JOURNAL

VFS only

SQLITE_OPEN_NOMUTEX

Ok for sqlite3_open_v2()

SQLITE_OPEN_FULLMUTEX

Ok for sqlite3_open_v2()

SQLITE_OPEN_SHAREDCACHE

Ok for sqlite3_open_v2()

SQLITE_OPEN_PRIVATECACHE

Ok for sqlite3_open_v2()

SQLITE_OPEN_WAL

VFS only

SQLITE_OPEN_NOFOLLOW

Ok for sqlite3_open_v2()

deprecated alias SQLITE_OPEN_MASTER_JOURNAL = SQLITE_OPEN_SUPER_JOURNAL;

VFS only

struct sqlite3_file;
CAPI3REF
OS Interface Open File Handle
struct sqlite3_io_methods;
CAPI3REF
OS Interface File Virtual Methods Object
struct sqlite3_mutex;
CAPI3REF
Mutex Handle
struct sqlite3_api_routines;
CAPI3REF
Loadable Extension Thunk
alias xDlSymReturn = extern (C) void* function() nothrow;

alias sqlite3_syscall_ptr = extern (C) void function() nothrow;
CAPI3REF
OS Interface Object
SQLITE_ACCESS_READWRITE

Used by PRAGMA temp_store_directory

SQLITE_ACCESS_READ

Unused

enum int SQLITE_SHM_NLOCK;
CAPI3REF
Maximum xShmLock index
nothrow int sqlite3_initialize();

nothrow int sqlite3_shutdown();

nothrow int sqlite3_os_init();

nothrow int sqlite3_os_end();
CAPI3REF
Initialize The SQLite Library
nothrow int sqlite3_config(int, ...);
CAPI3REF
Configuring The SQLite Library
nothrow int sqlite3_db_config(sqlite3*, int op, ...);
CAPI3REF
Configure database connections
struct sqlite3_mem_methods;
CAPI3REF
Memory Allocation Routines
void* function(int) xMalloc;

Memory allocation function

void function(void*) xFree;

Free a prior allocation

void* function(void*, int) xRealloc;

Resize an allocation

int function(void*) xSize;

Return the size of an allocation

int function(int) xRoundup;

Round up request size to allocation size

int function(void*) xInit;

Initialize the memory allocator

void function(void*) xShutdown;

Deinitialize the memory allocator

void* pAppData;

Argument to xInit() and xShutdown()

SQLITE_CONFIG_SINGLETHREAD

nil

SQLITE_CONFIG_MULTITHREAD

nil

SQLITE_CONFIG_SERIALIZED

nil

SQLITE_CONFIG_MALLOC

sqlite3_mem_methods*

SQLITE_CONFIG_GETMALLOC

sqlite3_mem_methods*

SQLITE_CONFIG_SCRATCH

No longer used

SQLITE_CONFIG_PAGECACHE

void*, int sz, int N

SQLITE_CONFIG_HEAP

void*, int nByte, int min

SQLITE_CONFIG_MEMSTATUS

boolean

SQLITE_CONFIG_MUTEX

sqlite3_mutex_methods*

SQLITE_CONFIG_GETMUTEX

sqlite3_mutex_methods*

SQLITE_CONFIG_LOOKASIDE

int int

SQLITE_CONFIG_PCACHE

no-op

SQLITE_CONFIG_GETPCACHE

no-op

SQLITE_CONFIG_LOG

xFunc, void*

SQLITE_CONFIG_URI

int

SQLITE_CONFIG_PCACHE2

sqlite3_pcache_methods2*

SQLITE_CONFIG_GETPCACHE2

sqlite3_pcache_methods2*

SQLITE_CONFIG_COVERING_INDEX_SCAN

int

SQLITE_CONFIG_SQLLOG

xSqllog, void*

SQLITE_CONFIG_MMAP_SIZE

sqlite3_int64, sqlite3_int64

SQLITE_CONFIG_WIN32_HEAPSIZE

int nByte

SQLITE_CONFIG_PCACHE_HDRSZ

int *psz

SQLITE_CONFIG_PMASZ

unsigned int szPma

SQLITE_CONFIG_STMTJRNL_SPILL

int nByte

SQLITE_CONFIG_SMALL_MALLOC

boolean

SQLITE_CONFIG_SORTERREF_SIZE

int nByte

SQLITE_CONFIG_MEMDB_MAXSIZE

sqlite3_int64

SQLITE_DBCONFIG_MAINDBNAME

const char*

SQLITE_DBCONFIG_LOOKASIDE

void* int int

SQLITE_DBCONFIG_ENABLE_FKEY

int int*

SQLITE_DBCONFIG_ENABLE_TRIGGER

int int*

SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER

int int*

SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION

int int*

SQLITE_DBCONFIG_NO_CKPT_ON_CLOSE

int int*

SQLITE_DBCONFIG_ENABLE_QPSG

int int*

SQLITE_DBCONFIG_TRIGGER_EQP

int int*

SQLITE_DBCONFIG_RESET_DATABASE

int int*

SQLITE_DBCONFIG_DEFENSIVE

int int*

SQLITE_DBCONFIG_WRITABLE_SCHEMA

int int*

SQLITE_DBCONFIG_LEGACY_ALTER_TABLE

int int*

SQLITE_DBCONFIG_DQS_DML

int int*

SQLITE_DBCONFIG_DQS_DDL

int int*

SQLITE_DBCONFIG_ENABLE_VIEW

int int*

SQLITE_DBCONFIG_LEGACY_FILE_FORMAT

int int*

SQLITE_DBCONFIG_TRUSTED_SCHEMA

int int*

SQLITE_DBCONFIG_MAX

Largest DBCONFIG

nothrow int sqlite3_extended_result_codes(sqlite3*, int onoff);
CAPI3REF
Enable Or Disable Extended Result Codes
nothrow sqlite3_int64 sqlite3_last_insert_rowid(sqlite3*);
CAPI3REF
Last Insert Rowid
nothrow void sqlite3_set_last_insert_rowid(sqlite3*, sqlite3_int64);
CAPI3REF
Set the Last Insert Rowid value
nothrow int sqlite3_changes(sqlite3*);
CAPI3REF
Count The Number Of Rows Modified
nothrow int sqlite3_total_changes(sqlite3*);
CAPI3REF
Total Number Of Rows Modified
nothrow void sqlite3_interrupt(sqlite3*);
CAPI3REF
Interrupt A Long-Running Query
nothrow int sqlite3_complete(const char* sql);

nothrow int sqlite3_complete16(const void* sql);
CAPI3REF
Determine If An SQL Statement Is Complete
nothrow int sqlite3_busy_handler(sqlite3*, int function(void*, int), void*);
CAPI3REF
Register A Callback To Handle SQLITE_BUSY Errors
nothrow int sqlite3_busy_timeout(sqlite3*, int ms);
CAPI3REF
Set A Busy Timeout
nothrow int sqlite3_get_table(sqlite3* db, const(char)* zSql, char*** pazResult, int* pnRow, int* pnColumn, char** pzErrmsg);
CAPI3REF
Convenience Routines For Running Queries
nothrow void sqlite3_free_table(char** result);
nothrow char* sqlite3_mprintf(const char*, ...);
CAPI3REF
Formatted String Printing Functions
nothrow void* sqlite3_malloc(int);

nothrow void* sqlite3_malloc64(sqlite3_uint64);

nothrow void* sqlite3_realloc(void*, int);

nothrow void* sqlite3_realloc64(void*, sqlite3_uint64);

nothrow void sqlite3_free(void*);

nothrow sqlite3_uint64 sqlite3_msize(void*);
CAPI3REF
Memory Allocation Subsystem
nothrow sqlite3_int64 sqlite3_memory_used();
CAPI3REF
Memory Allocator Statistics
nothrow void sqlite3_randomness(int N, void* P);
CAPI3REF
Pseudo-Random Number Generator
nothrow int sqlite3_set_authorizer(sqlite3*, int function(void*, int, const char*, const char*, const char*, const char*) xAuth, void* pUserData);
CAPI3REF
Compile-Time Authorization Callbacks
SQLITE_DENY

Abort the SQL statement with an error

SQLITE_IGNORE

Don't allow access, but don't generate an error

SQLITE_CREATE_INDEX

Index Name Table Name

SQLITE_CREATE_TABLE

Table Name NULL

SQLITE_CREATE_TEMP_INDEX

Index Name Table Name

SQLITE_CREATE_TEMP_TABLE

Table Name NULL

SQLITE_CREATE_TEMP_TRIGGER

Trigger Name Table Name

SQLITE_CREATE_TEMP_VIEW

View Name NULL

SQLITE_CREATE_TRIGGER

Trigger Name Table Name

SQLITE_CREATE_VIEW

View Name NULL

SQLITE_DELETE

Table Name NULL

SQLITE_DROP_INDEX

Index Name Table Name

SQLITE_DROP_TABLE

Table Name NULL

SQLITE_DROP_TEMP_INDEX

Index Name Table Name

SQLITE_DROP_TEMP_TABLE

Table Name NULL

SQLITE_DROP_TEMP_TRIGGER

Trigger Name Table Name

SQLITE_DROP_TEMP_VIEW

View Name NULL

SQLITE_DROP_TRIGGER

Trigger Name Table Name

SQLITE_DROP_VIEW

View Name NULL

SQLITE_INSERT

Table Name NULL

SQLITE_PRAGMA

Pragma Name 1st arg or NULL

SQLITE_READ

Table Name Column Name

SQLITE_SELECT

NULL NULL

SQLITE_TRANSACTION

Operation NULL

SQLITE_UPDATE

Table Name Column Name

SQLITE_ATTACH

Filename NULL

SQLITE_DETACH

Database Name NULL

SQLITE_ALTER_TABLE

Database Name Table Name

SQLITE_REINDEX

Index Name NULL

SQLITE_ANALYZE

Table Name NULL

SQLITE_CREATE_VTABLE

Table Name Module Name

SQLITE_DROP_VTABLE

Table Name Module Name

SQLITE_FUNCTION

NULL Function Name

SQLITE_SAVEPOINT

Operation Savepoint Name

SQLITE_COPY

No longer used

SQLITE_RECURSIVE

NULL NULL

deprecated nothrow void* sqlite3_trace(sqlite3*, void function(void*, const char*) xTrace, void*);

deprecated nothrow void* sqlite3_profile(sqlite3*, void function(void*, const char*, sqlite3_uint64) xProfile, void*);
CAPI3REF
Tracing And Profiling Functions
nothrow int sqlite3_trace_v2(sqlite3*, uint uMask, int function(uint, void*, void*, void*) xCallback, void* pCtx);
CAPI3REF
SQL Trace Hook
nothrow void sqlite3_progress_handler(sqlite3*, int, int function(void*), void*);
CAPI3REF
Query Progress Callbacks
nothrow int sqlite3_open(const(char)* filename, sqlite3** ppDb);

nothrow int sqlite3_open16(const(void)* filename, sqlite3** ppDb);

nothrow int sqlite3_open_v2(const(char)* filename, sqlite3** ppDb, int flags, const(char)* zVfs);

nothrow int sqlite3_uri_boolean(const(char)* zFile, const(char)* zParam, int bDefault);

nothrow sqlite3_int64 sqlite3_uri_int64(const char*, const char*, sqlite3_int64);

nothrow const(char)* sqlite3_uri_key(const(char)* zFilename, int N);

nothrow const(char)* sqlite3_filename_journal(const(char)*);

nothrow const(char)* sqlite3_filename_wal(const(char)*);

nothrow void sqlite3_free_filename(char*);
CAPI3REF
Opening A New Database Connection
nothrow int sqlite3_errcode(sqlite3* db);

nothrow int sqlite3_extended_errcode(sqlite3* db);

nothrow const(char)* sqlite3_errmsg(sqlite3*);

nothrow const(void)* sqlite3_errmsg16(sqlite3*);

nothrow const(char)* sqlite3_errstr(int);
CAPI3REF
Error Codes And Messages
struct sqlite3_stmt;
CAPI3REF
SQL Statement Object
nothrow int sqlite3_limit(sqlite3*, int id, int newVal);
CAPI3REF
Run-time Limits
nothrow int sqlite3_prepare(sqlite3* db, const(char)* zSql, int nByte, sqlite3_stmt** ppStmt, const(char*)* pzTail);

nothrow int sqlite3_prepare_v2(sqlite3* db, const(char)* zSql, int nByte, sqlite3_stmt** ppStmt, const(char*)* pzTail);

nothrow int sqlite3_prepare_v3(sqlite3* db, const(char)* zSql, int nByte, uint prepFlags, sqlite3_stmt** ppStmt, const(char*)* pzTail);

nothrow int sqlite3_prepare16(sqlite3* db, const(void)* zSql, int nByte, sqlite3_stmt** ppStmt, const(void*)* pzTail);

nothrow int sqlite3_prepare16_v2(sqlite3* db, const(void)* zSql, int nByte, sqlite3_stmt** ppStmt, const(void*)* pzTail);

nothrow int sqlite3_prepare16_v3(sqlite3* db, const(void)* zSql, int nByte, uint prepFlags, sqlite3_stmt** ppStmt, const(void*)* pzTail);
CAPI3REF
Compiling An SQL Statement
nothrow const(char)* sqlite3_sql(sqlite3_stmt* pStmt);

nothrow char* sqlite3_expanded_sql(sqlite3_stmt* pStmt);
CAPI3REF
Retrieving Statement SQL
nothrow int sqlite3_stmt_busy(sqlite3_stmt*);
CAPI3REF
Determine If A Prepared Statement Has Been Reset
struct sqlite3_value;
CAPI3REF
Dynamically Typed Value Object
struct sqlite3_context;
CAPI3REF
SQL Function Context Object
nothrow int sqlite3_bind_blob(sqlite3_stmt*, int, const void*, int n, void function(void*));

nothrow int sqlite3_bind_blob64(sqlite3_stmt*, int, const void*, sqlite3_uint64, void function(void*));

nothrow int sqlite3_bind_double(sqlite3_stmt*, int, double);

nothrow int sqlite3_bind_int(sqlite3_stmt*, int, int);

nothrow int sqlite3_bind_int64(sqlite3_stmt*, int, sqlite3_int64);

nothrow int sqlite3_bind_null(sqlite3_stmt*, int);

nothrow int sqlite3_bind_text(sqlite3_stmt*, int, const char*, int n, void function(void*));

nothrow int sqlite3_bind_text16(sqlite3_stmt*, int, const void*, int, void function(void*));

nothrow int sqlite3_bind_text64(sqlite3_stmt*, int, const char*, sqlite3_uint64, void function(void*), ubyte encoding);

nothrow int sqlite3_bind_value(sqlite3_stmt*, int, const sqlite3_value*);

nothrow int sqlite3_bind_zeroblob(sqlite3_stmt*, int, int n);

nothrow int sqlite3_bind_zeroblob64(sqlite3_stmt*, int, sqlite3_uint64 n);
CAPI3REF
Binding Values To Prepared Statements
nothrow int sqlite3_bind_parameter_count(sqlite3_stmt*);
CAPI3REF
Number Of SQL Parameters
nothrow const(char)* sqlite3_bind_parameter_name(sqlite3_stmt*, int);
CAPI3REF
Name Of A Host Parameter
nothrow int sqlite3_bind_parameter_index(sqlite3_stmt*, const char* zName);
CAPI3REF
Index Of A Parameter With A Given Name
nothrow int sqlite3_clear_bindings(sqlite3_stmt*);
CAPI3REF
Reset All Bindings On A Prepared Statement
nothrow int sqlite3_column_count(sqlite3_stmt* pStmt);
CAPI3REF
Number Of Columns In A Result Set
nothrow const(char)* sqlite3_column_name(sqlite3_stmt*, int N);

nothrow const(void)* sqlite3_column_name16(sqlite3_stmt*, int N);
CAPI3REF
Column Names In A Result Set
nothrow const(char)* sqlite3_column_database_name(sqlite3_stmt*, int);

nothrow const(void)* sqlite3_column_database_name16(sqlite3_stmt*, int);

nothrow const(char)* sqlite3_column_table_name(sqlite3_stmt*, int);

nothrow const(void)* sqlite3_column_table_name16(sqlite3_stmt*, int);

nothrow const(char)* sqlite3_column_origin_name(sqlite3_stmt*, int);

nothrow const(void)* sqlite3_column_origin_name16(sqlite3_stmt*, int);
CAPI3REF
Source Of Data In A Query Result
nothrow const(char)* sqlite3_column_decltype(sqlite3_stmt*, int);

nothrow const(void)* sqlite3_column_decltype16(sqlite3_stmt*, int);
CAPI3REF
Declared Datatype Of A Query Result
nothrow int sqlite3_step(sqlite3_stmt*);
CAPI3REF
Evaluate An SQL Statement
nothrow int sqlite3_data_count(sqlite3_stmt* pStmt);
CAPI3REF
Number of columns in a result set
nothrow const(void)* sqlite3_column_blob(sqlite3_stmt*, int iCol);

nothrow double sqlite3_column_double(sqlite3_stmt*, int iCol);

nothrow int sqlite3_column_int(sqlite3_stmt*, int iCol);

nothrow sqlite3_int64 sqlite3_column_int64(sqlite3_stmt*, int iCol);

nothrow const(char)* sqlite3_column_text(sqlite3_stmt*, int iCol);

nothrow const(void)* sqlite3_column_text16(sqlite3_stmt*, int iCol);

nothrow sqlite3_value* sqlite3_column_value(sqlite3_stmt*, int iCol);

nothrow int sqlite3_column_bytes(sqlite3_stmt*, int iCol);

nothrow int sqlite3_column_bytes16(sqlite3_stmt*, int iCol);

nothrow int sqlite3_column_type(sqlite3_stmt*, int iCol);
CAPI3REF
Result Values From A Query
nothrow int sqlite3_finalize(sqlite3_stmt* pStmt);
CAPI3REF
Destroy A Prepared Statement Object
nothrow int sqlite3_reset(sqlite3_stmt* pStmt);
CAPI3REF
Reset A Prepared Statement Object
nothrow int sqlite3_create_function(sqlite3* db, const(char)* zFunctionName, int nArg, int eTextRep, void* pApp, void function(sqlite3_context*, int, sqlite3_value**) xFunc, void function(sqlite3_context*, int, sqlite3_value**) xStep, void function(sqlite3_context*) xFinal);

nothrow int sqlite3_create_function16(sqlite3* db, const(void)* zFunctionName, int nArg, int eTextRep, void* pApp, void function(sqlite3_context*, int, sqlite3_value**) xFunc, void function(sqlite3_context*, int, sqlite3_value**) xStep, void function(sqlite3_context*) xFinal);

nothrow int sqlite3_create_function_v2(sqlite3* db, const(char)* zFunctionName, int nArg, int eTextRep, void* pApp, void function(sqlite3_context*, int, sqlite3_value**) xFunc, void function(sqlite3_context*, int, sqlite3_value**) xStep, void function(sqlite3_context*) xFinal, void function(void*) xDestroy);

nothrow int sqlite3_create_window_function(sqlite3* db, const(char)* zFunctionName, int nArg, int eTextRep, void* pApp, void function(sqlite3_context*, int, sqlite3_value**) xStep, void function(sqlite3_context*) xFinal, void function(sqlite3_context*) xValue, void function(sqlite3_context*, int, sqlite3_value**) xInverse, void function(void*) xDestroy);
CAPI3REF
Create Or Redefine SQL Functions
SQLITE_UTF8
IMP
R-37514-35566
SQLITE_UTF16LE
IMP
R-03371-37637
SQLITE_UTF16BE
IMP
R-51971-34154
SQLITE_UTF16

Use native byte order

SQLITE_ANY

sqlite3_create_function only

SQLITE_UTF16_ALIGNED

sqlite3_create_collation only

enum int SQLITE_DETERMINISTIC;
CAPI3REF
Function Flags
deprecated nothrow int sqlite3_aggregate_count(sqlite3_context*);
CAPI3REF
Deprecated Functions
nothrow const(void)* sqlite3_value_blob(sqlite3_value*);

nothrow int sqlite3_value_bytes(sqlite3_value*);

nothrow int sqlite3_value_bytes16(sqlite3_value*);

nothrow double sqlite3_value_double(sqlite3_value*);

nothrow int sqlite3_value_int(sqlite3_value*);

nothrow sqlite3_int64 sqlite3_value_int64(sqlite3_value*);

nothrow const(char)* sqlite3_value_text(sqlite3_value*);

nothrow const(void)* sqlite3_value_text16(sqlite3_value*);

nothrow const(void)* sqlite3_value_text16le(sqlite3_value*);

nothrow const(void)* sqlite3_value_text16be(sqlite3_value*);

nothrow int sqlite3_value_type(sqlite3_value*);

nothrow int sqlite3_value_numeric_type(sqlite3_value*);

nothrow int sqlite3_value_nochange(sqlite3_value*);

nothrow int sqlite3_value_frombind(sqlite3_value*);
CAPI3REF
Obtaining SQL Function Parameter Values
nothrow void* sqlite3_aggregate_context(sqlite3_context*, int nBytes);
CAPI3REF
Obtain Aggregate Function Context
nothrow void* sqlite3_user_data(sqlite3_context*);
CAPI3REF
User Data For Functions
nothrow sqlite3* sqlite3_context_db_handle(sqlite3_context*);
CAPI3REF
Database Connection For Functions
nothrow void* sqlite3_get_auxdata(sqlite3_context*, int N);

nothrow void sqlite3_set_auxdata(sqlite3_context*, int N, void*, void function(void*));
CAPI3REF
Function Auxiliary Data
alias sqlite3_destructor_type = extern (C) void function(void*) nothrow;
CAPI3REF
Constants Defining Special Destructor Behavior
nothrow void sqlite3_result_blob(sqlite3_context*, const void*, int, void function(void*));

nothrow void sqlite3_result_blob64(sqlite3_context*, const void*, sqlite3_uint64, void function(void*));

nothrow void sqlite3_result_double(sqlite3_context*, double);

nothrow void sqlite3_result_error(sqlite3_context*, const char*, int);

nothrow void sqlite3_result_error16(sqlite3_context*, const void*, int);

nothrow void sqlite3_result_error_toobig(sqlite3_context*);

nothrow void sqlite3_result_error_nomem(sqlite3_context*);

nothrow void sqlite3_result_error_code(sqlite3_context*, int);

nothrow void sqlite3_result_int(sqlite3_context*, int);

nothrow void sqlite3_result_int64(sqlite3_context*, sqlite3_int64);

nothrow void sqlite3_result_null(sqlite3_context*);

nothrow void sqlite3_result_text(sqlite3_context*, const char*, int, void function(void*));

nothrow void sqlite3_result_text64(sqlite3_context*, const char*, sqlite3_uint64, void function(void*), ubyte encoding);

nothrow void sqlite3_result_text16(sqlite3_context*, const void*, int, void function(void*));

nothrow void sqlite3_result_text16le(sqlite3_context*, const void*, int, void function(void*));

nothrow void sqlite3_result_text16be(sqlite3_context*, const void*, int, void function(void*));

nothrow void sqlite3_result_value(sqlite3_context*, sqlite3_value*);

nothrow void sqlite3_result_zeroblob(sqlite3_context*, int n);

nothrow int sqlite3_result_zeroblob64(sqlite3_context*, sqlite3_uint64 n);
CAPI3REF
Setting The Result Of An SQL Function
nothrow int sqlite3_create_collation(sqlite3*, const(char)* zName, int eTextRep, void* pArg, int function(void*, int, const void*, int, const void*) xCompare);

nothrow int sqlite3_create_collation_v2(sqlite3*, const(char)* zName, int eTextRep, void* pArg, int function(void*, int, const void*, int, const void*) xCompare, void function(void*) xDestroy);

nothrow int sqlite3_create_collation16(sqlite3*, const(void)* zName, int eTextRep, void* pArg, int function(void*, int, const void*, int, const void*) xCompare);
CAPI3REF
Define New Collating Sequences
nothrow int sqlite3_collation_needed(sqlite3*, void*, void function(void*, sqlite3*, int eTextRep, const char*));

nothrow int sqlite3_collation_needed16(sqlite3*, void*, void function(void*, sqlite3*, int eTextRep, const void*));
CAPI3REF
Collation Needed Callbacks
nothrow void sqlite3_activate_cerod(const(char)* zPassPhrase);

Specify the activation key for a CEROD database. Unless activated, none of the CEROD routines will work.

nothrow int sqlite3_sleep(int);
CAPI3REF
Suspend Execution For A Short Time
char* sqlite3_temp_directory;
CAPI3REF
Name Of The Folder Holding Temporary Files
char* sqlite3_data_directory;
CAPI3REF
Name Of The Folder Holding Database Files
nothrow int sqlite3_win32_set_directory(c_ulong type, void* zValue);

nothrow int sqlite3_win32_set_directory8(c_ulong type, void* zValue);

nothrow int sqlite3_win32_set_directory16(c_ulong type, void* zValue);
CAPI3REF
Win32 Specific Interface
nothrow int sqlite3_get_autocommit(sqlite3*);
CAPI3REF
Test For Auto-Commit Mode
nothrow sqlite3* sqlite3_db_handle(sqlite3_stmt*);
CAPI3REF
Find The Database Handle Of A Prepared Statement
nothrow const(char)* sqlite3_db_filename(sqlite3* db, const char* zDbName);
CAPI3REF
Return The Filename For A Database Connection
nothrow int sqlite3_db_readonly(sqlite3* db, const char* zDbName);
CAPI3REF
Determine if a database is read-only
nothrow void* sqlite3_commit_hook(sqlite3*, int function(void*), void*);

nothrow void* sqlite3_rollback_hook(sqlite3*, void function(void*), void*);
CAPI3REF
Commit And Rollback Notification Callbacks
nothrow void* sqlite3_update_hook(sqlite3*, void function(void*, int, char*, char*, sqlite3_int64), void*);
CAPI3REF
Data Change Notification Callbacks
nothrow int sqlite3_enable_shared_cache(int);
CAPI3REF
Enable Or Disable Shared Pager Cache
nothrow int sqlite3_release_memory(int);
CAPI3REF
Attempt To Free Heap Memory
nothrow int sqlite3_db_release_memory(sqlite3*);
CAPI3REF
Free Memory Used By A Database Connection
deprecated nothrow void sqlite3_soft_heap_limit(int N);
CAPI3REF
Deprecated Soft Heap Limit Interface
nothrow int sqlite3_table_column_metadata(sqlite3* db, const(char)* zDbName, const(char)* zTableName, const(char)* zColumnName, char** pzDataType, char** pzCollSeq, int* pNotNull, int* pPrimaryKey, int* pAutoinc);
CAPI3REF
Extract Metadata About A Column Of A Table
nothrow int sqlite3_load_extension(sqlite3* db, const(char)* zFile, const(char)* zProc, char** pzErrMsg);
CAPI3REF
Load An Extension
nothrow int sqlite3_enable_load_extension(sqlite3* db, int onoff);
CAPI3REF
Enable Or Disable Extension Loading
nothrow int sqlite3_auto_extension(void function() xEntryPoint);
CAPI3REF
Automatically Load Statically Linked Extensions
nothrow int sqlite3_cancel_auto_extension(void function() xEntryPoint);
CAPI3REF
Cancel Automatic Extension Loading
nothrow void sqlite3_reset_auto_extension();
CAPI3REF
Reset Automatic Extension Loading
alias mapFunction = extern (C) void function(sqlite3_context*, int, sqlite3_value**) nothrow;

struct sqlite3_module;

The interface to the virtual-table mechanism is currently considered to be experimental. The interface might change in incompatible ways. If this is a problem for you, do not use the interface at this time.

When the virtual-table mechanism stabilizes, we will declare the interface fixed, support it indefinitely, and remove this comment.

CAPI3REF
Virtual Table Object
struct sqlite3_index_info;
CAPI3REF
Virtual Table Indexing Information
int nConstraint;

Number of entries in aConstraint

sqlite3_index_constraint* aConstraint;

Table of WHERE clause constraints

int nOrderBy;

Number of terms in the ORDER BY clause

sqlite3_index_orderby* aOrderBy;

The ORDER BY clause

int idxNum;

Number used to identify the index

char* idxStr;

String, possibly obtained from sqlite3_malloc

int needToFreeIdxStr;

Free idxStr using sqlite3_free() if true

int orderByConsumed;

True if output is already ordered

double estimatedCost;

Estimated cost of using this index

nothrow int sqlite3_create_module(sqlite3* db, const(char)* zName, const(sqlite3_module)* p, void* pClientData);

nothrow int sqlite3_create_module_v2(sqlite3* db, const(char)* zName, const(sqlite3_module)* p, void* pClientData, void function(void*) xDestroy);
CAPI3REF
Register A Virtual Table Implementation
nothrow int sqlite3_drop_modules(sqlite3* db, const(char*)* azKeep);
CAPI3REF
Remove Unnecessary Virtual Table Implementations
struct sqlite3_vtab;
CAPI3REF
Virtual Table Instance Object
const(sqlite3_module)* pModule;

The module for this virtual table

int nRef;

NO LONGER USED

char* zErrMsg;

Error message from sqlite3_mprintf()

struct sqlite3_vtab_cursor;
CAPI3REF
Virtual Table Cursor Object
sqlite3_vtab* pVtab;

Virtual table of this cursor

nothrow int sqlite3_declare_vtab(sqlite3*, const char* zSQL);
CAPI3REF
Declare The Schema Of A Virtual Table
nothrow int sqlite3_overload_function(sqlite3*, const char* zFuncName, int nArg);
CAPI3REF
Overload A Function For A Virtual Table
struct sqlite3_blob;

The interface to the virtual-table mechanism defined above (back up to a comment remarkably similar to this one) is currently considered to be experimental. The interface might change in incompatible ways. If this is a problem for you, do not use the interface at this time.

When the virtual-table mechanism stabilizes, we will declare the interface fixed, support it indefinitely, and remove this comment.

nothrow int sqlite3_blob_open(sqlite3*, const(char)* zDb, const(char)* zTable, const(char)* zColumn, sqlite3_int64 iRow, int flags, sqlite3_blob** ppBlob);
CAPI3REF
Open A BLOB For Incremental I/O
nothrow int sqlite3_blob_reopen(sqlite3_blob*, sqlite3_int64);
CAPI3REF
Move a BLOB Handle to a New Row
nothrow int sqlite3_blob_close(sqlite3_blob*);
CAPI3REF
Close A BLOB Handle
nothrow int sqlite3_blob_bytes(sqlite3_blob*);
CAPI3REF
Return The Size Of An Open BLOB
nothrow int sqlite3_blob_read(sqlite3_blob*, void* Z, int N, int iOffset);
CAPI3REF
Read Data From A BLOB Incrementally
nothrow int sqlite3_blob_write(sqlite3_blob*, const void* z, int n, int iOffset);
CAPI3REF
Write Data Into A BLOB Incrementally
nothrow sqlite3_vfs* sqlite3_vfs_find(const char* zVfsName);

nothrow int sqlite3_vfs_register(sqlite3_vfs*, int makeDflt);

nothrow int sqlite3_vfs_unregister(sqlite3_vfs*);
CAPI3REF
Virtual File System Objects
nothrow sqlite3_mutex* sqlite3_mutex_alloc(int);

nothrow void sqlite3_mutex_free(sqlite3_mutex*);

nothrow void sqlite3_mutex_enter(sqlite3_mutex*);

nothrow int sqlite3_mutex_try(sqlite3_mutex*);

nothrow void sqlite3_mutex_leave(sqlite3_mutex*);
CAPI3REF
Mutexes
struct sqlite3_mutex_methods;
CAPI3REF
Mutex Methods Object
nothrow int sqlite3_mutex_held(sqlite3_mutex*);

nothrow int sqlite3_mutex_notheld(sqlite3_mutex*);
CAPI3REF
Mutex Verification Routines
SQLITE_MUTEX_STATIC_MEM

sqlite3_malloc()

SQLITE_MUTEX_STATIC_MEM2

NOT USED

SQLITE_MUTEX_STATIC_OPEN

sqlite3BtreeOpen()

SQLITE_MUTEX_STATIC_PRNG

sqlite3_randomness()

SQLITE_MUTEX_STATIC_LRU

lru page list

SQLITE_MUTEX_STATIC_LRU2

NOT USED

SQLITE_MUTEX_STATIC_PMEM

sqlite3PageMalloc()

SQLITE_MUTEX_STATIC_APP1

For use by application

SQLITE_MUTEX_STATIC_APP2

For use by application

SQLITE_MUTEX_STATIC_APP3

For use by application

SQLITE_MUTEX_STATIC_VFS1

For use by built-in VFS

SQLITE_MUTEX_STATIC_VFS2

For use by extension VFS

SQLITE_MUTEX_STATIC_VFS3

For use by application VFS

nothrow sqlite3_mutex* sqlite3_db_mutex(sqlite3*);
CAPI3REF
Retrieve the mutex for a database connection
nothrow int sqlite3_file_control(sqlite3*, const char* zDbName, int op, void*);
CAPI3REF
Low-Level Control Of Database Files
nothrow int sqlite3_test_control(int op, ...);
CAPI3REF
Testing Interface
SQLITE_TESTCTRL_PRNG_RESET

NOT USED

SQLITE_TESTCTRL_RESERVE

NOT USED

SQLITE_TESTCTRL_ISKEYWORD

NOT USED

SQLITE_TESTCTRL_SCRATCHMALLOC

NOT USED

SQLITE_TESTCTRL_EXPLAIN_STMT

NOT USED

SQLITE_TESTCTRL_LAST

Largest TESTCTRL

nothrow int sqlite3_keyword_count();

nothrow int sqlite3_keyword_name(int, const(char*)*, int*);

nothrow int sqlite3_keyword_check(const(char)*, int);
CAPI3REF
SQL Keyword Checking
struct sqlite3_str;
CAPI3REF
Dynamic String Object
nothrow sqlite3_str* sqlite3_str_new(sqlite3*);
CAPI3REF
Create A New Dynamic String Object
nothrow char* sqlite3_str_finish(sqlite3_str*);
CAPI3REF
Finalize A Dynamic String
nothrow void sqlite3_str_appendf(sqlite3_str*, const(char)* zFormat, ...);

nothrow void sqlite3_str_vappendf(sqlite3_str*, const(char)* zFormat, va_list);

nothrow void sqlite3_str_append(sqlite3_str*, const(char)* zIn, int N);

nothrow void sqlite3_str_appendall(sqlite3_str*, const(char)* zIn);

nothrow void sqlite3_str_appendchar(sqlite3_str*, int N, char C);

nothrow void sqlite3_str_reset(sqlite3_str*);
CAPI3REF
Add Content To A Dynamic String
nothrow int sqlite3_str_errcode(sqlite3_str*);
CAPI3REF
Status Of A Dynamic String
nothrow int sqlite3_status(int op, int* pCurrent, int* pHighwater, int resetFlag);

nothrow int sqlite3_status64(int op, long* pCurrent, long* pHighwater, int resetFlag);
CAPI3REF
SQLite Runtime Status
SQLITE_STATUS_SCRATCH_USED

NOT USED

SQLITE_STATUS_SCRATCH_OVERFLOW

NOT USED

SQLITE_STATUS_SCRATCH_SIZE

NOT USED

nothrow int sqlite3_db_status(sqlite3*, int op, int* pCur, int* pHiwtr, int resetFlg);
CAPI3REF
Database Connection Status
SQLITE_DBSTATUS_MAX

Largest defined DBSTATUS

nothrow int sqlite3_stmt_status(sqlite3_stmt*, int op, int resetFlg);
CAPI3REF
Prepared Statement Status
struct sqlite3_pcache;
CAPI3REF
Custom Page Cache Object
struct sqlite3_pcache_page;
CAPI3REF
Custom Page Cache Object
struct sqlite3_pcache_methods2;
CAPI3REF
Application Defined Page Cache.
struct sqlite3_backup;
CAPI3REF
Online Backup Object
nothrow sqlite3_backup* sqlite3_backup_init(sqlite3* pDest, const(char)* zDestName, sqlite3* pSource, const(char)* zSourceName);

nothrow int sqlite3_backup_step(sqlite3_backup* p, int nPage);

nothrow int sqlite3_backup_finish(sqlite3_backup* p);

nothrow int sqlite3_backup_remaining(sqlite3_backup* p);

nothrow int sqlite3_backup_pagecount(sqlite3_backup* p);
CAPI3REF
Online Backup API.
nothrow int sqlite3_unlock_notify(sqlite3* pBlocked, void function(void** apArg, int nArg) xNotify, void* pNotifyArg);
CAPI3REF
Unlock Notification
nothrow int sqlite3_stricmp(const char*, const char*);
CAPI3REF
String Comparison
nothrow void sqlite3_log(int iErrCode, const char* zFormat, ...);
CAPI3REF
Error Logging Interface
nothrow void* sqlite3_wal_hook(sqlite3*, int function(void*, sqlite3*, const char*, int), void*);
CAPI3REF
Write-Ahead Log Commit Hook
nothrow int sqlite3_wal_autocheckpoint(sqlite3* db, int N);
CAPI3REF
Configure an auto-checkpoint
nothrow int sqlite3_wal_checkpoint(sqlite3* db, const char* zDb);
CAPI3REF
Checkpoint a database
nothrow int sqlite3_wal_checkpoint_v2(sqlite3* db, const(char)* zDb, int eMode, int* pnLog, int* pnCkpt);
CAPI3REF
Checkpoint a database
enum int SQLITE_VTAB_CONSTRAINT_SUPPORT;

nothrow int sqlite3_preupdate_old(sqlite3*, int, sqlite3_value**);

nothrow int sqlite3_preupdate_count(sqlite3*);

nothrow int sqlite3_preupdate_depth(sqlite3*);

nothrow int sqlite3_preupdate_new(sqlite3*, int, sqlite3_value**);
CAPI3REF
Virtual Table Configuration Options
nothrow int sqlite3_rtree_geometry_callback(sqlite3* db, const(char)* zGeom, int function(sqlite3_rtree_geometry*, int nCoord, double* aCoord, int* pRes) xGeom, void* pContext);

Register a geometry callback named zGeom that can be used as part of an R-Tree geometry query as follows:

SELECT ... FROM <rtree> WHERE <rtree col> MATCH zGeom(... params ...)

struct sqlite3_rtree_geometry;

A pointer to a structure of the following type is passed as the first argument to callbacks registered using rtree_geometry_callback().

void* pContext;

Copy of pContext passed to s_r_g_c()

int nParam;

Size of array aParam[]

double* aParam;

Parameters passed to SQL geom function

void* pUser;

Callback implementation user data

void function(void*) xDelUser;

Called by SQLite to clean up pUser

NOT_WITHIN

Object completely outside of query region

PARTLY_WITHIN

Object partially overlaps query region

FULLY_WITHIN

nothrow int sqlite3changeset_start_v2(sqlite3_changeset_iter** pp, int nChangeset, void* pChangeset, int flags);

nothrow int sqlite3changeset_apply_v2(sqlite3* db, int nChangeset, void* pChangeset, int function(void* pCtx, const(char)* zTab) xFilter, int function(void* pCtx, int eConflict, sqlite3_changeset_iter* p) xConflict, void* pCtx, void** ppRebase, int* pnRebase, int flags);

nothrow int sqlite3changeset_apply_v2_strm(sqlite3* db, int function(void* pIn, void* pData, int* pnData) xInput, void* pIn, int function(void* pCtx, const(char)* zTab) xFilter, int function(void* pCtx, int eConflict, sqlite3_changeset_iter* p) xConflict, void* pCtx, void** ppRebase, int* pnRebase, int flags);

nothrow int sqlite3changeset_concat_strm(int function(void* pIn, void* pData, int* pnData) xInputA, void* pInA, int function(void* pIn, void* pData, int* pnData) xInputB, void* pInB, int function(void* pOut, const(void)* pData, int nData) xOutput, void* pOut);

nothrow int sqlite3changeset_invert_strm(int function(void* pIn, void* pData, int* pnData) xInput, void* pIn, int function(void* pOut, const(void)* pData, int nData) xOutput, void* pOut);

nothrow int sqlite3changeset_start_strm(sqlite3_changeset_iter** pp, int function(void* pIn, void* pData, int* pnData) xInput, void* pIn);

nothrow int sqlite3changeset_start_v2_strm(sqlite3_changeset_iter** pp, int function(void* pIn, void* pData, int* pnData) xInput, void* pIn, int flags);

nothrow int sqlite3session_changeset_strm(sqlite3_session* pSession, int function(void* pOut, const(void)* pData, int nData) xOutput, void* pOut);

nothrow int sqlite3session_patchset_strm(sqlite3_session* pSession, int function(void* pOut, const(void)* pData, int nData) xOutput, void* pOut);

nothrow int sqlite3changegroup_add_strm(sqlite3_changegroup*, int function(void* pIn, void* pData, int* pnData) xInput, void* pIn);

nothrow int sqlite3changegroup_output_strm(sqlite3_changegroup*, int function(void* pOut, const(void)* pData, int nData) xOutput, void* pOut);

nothrow int sqlite3rebaser_rebase_strm(sqlite3_rebaser* pRebaser, int function(void* pIn, void* pData, int* pnData) xInput, void* pIn, int function(void* pOut, const(void)* pData, int nData) xOutput, void* pOut);

Object fully contained within query region

struct Fts5Context;

alias fts5_extension_function = extern (C) void function(const(Fts5ExtensionApi*) pApi, Fts5Context* pFts, sqlite3_context* pCtx, int nVal, sqlite3_value** apVal) nothrow;

struct Fts5PhraseIter;

struct Fts5ExtensionApi;

struct Fts5Tokenizer;

enum int FTS5_TOKENIZE_QUERY;

enum int FTS5_TOKENIZE_PREFIX;

enum int FTS5_TOKENIZE_DOCUMENT;

enum int FTS5_TOKENIZE_AUX;

enum int FTS5_TOKEN_COLOCATED;

struct fts5_api;

Interfaces to extend FTS5.

© 1999–2021 The D Language Foundation
Licensed under the Boost License 1.0.
https://dlang.org/phobos/etc_c_sqlite3.html