module Bindings.Sqlite3 ( -- * Run-Time Library Version Numbers -- <http://sqlite.org/c3ref/libversion.html> sqlite3_version, sqlite3_libversion, sqlite3_libversion_number, -- * Test To See If The Library Is Threadsafe -- <http://sqlite.org/c3ref/threadsafe.html> sqlite3_threadsafe, -- * Database Connection Handle -- <http://sqlite.org/c3ref/sqlite3.html> Sqlite3, -- * Closing A Database Connection -- <http://sqlite.org/c3ref/close.html> sqlite3_close, -- * One-Step Query Execution Interface -- <http://sqlite.org/c3ref/exec.html> sqlite3_exec, -- * Result Codes -- <http://sqlite.org/c3ref/c_abort.html> _SQLITE_OK, _SQLITE_ERROR, _SQLITE_INTERNAL, _SQLITE_PERM, _SQLITE_ABORT, _SQLITE_BUSY, _SQLITE_LOCKED, _SQLITE_NOMEM, _SQLITE_READONLY, _SQLITE_INTERRUPT, _SQLITE_IOERR, _SQLITE_CORRUPT, _SQLITE_NOTFOUND, _SQLITE_FULL, _SQLITE_CANTOPEN, _SQLITE_PROTOCOL, _SQLITE_EMPTY, _SQLITE_SCHEMA, _SQLITE_TOOBIG, _SQLITE_CONSTRAINT, _SQLITE_MISMATCH, _SQLITE_MISUSE, _SQLITE_NOLFS, _SQLITE_AUTH, _SQLITE_FORMAT, _SQLITE_RANGE, _SQLITE_NOTADB, _SQLITE_ROW, _SQLITE_DONE, -- * Extended Result Codes -- <http://sqlite.org/c3ref/c_ioerr_access.html> _SQLITE_IOERR_READ, _SQLITE_IOERR_SHORT_READ, _SQLITE_IOERR_WRITE, _SQLITE_IOERR_FSYNC, _SQLITE_IOERR_DIR_FSYNC, _SQLITE_IOERR_TRUNCATE, _SQLITE_IOERR_FSTAT, _SQLITE_IOERR_UNLOCK, _SQLITE_IOERR_RDLOCK, _SQLITE_IOERR_DELETE, _SQLITE_IOERR_BLOCKED, _SQLITE_IOERR_NOMEM, _SQLITE_IOERR_ACCESS, _SQLITE_IOERR_CHECKRESERVEDLOCK, _SQLITE_IOERR_LOCK, _SQLITE_IOERR_CLOSE, _SQLITE_IOERR_DIR_CLOSE, -- * Flags For File Open Operations -- <http://sqlite.org/c3ref/c_open_create.html> _SQLITE_OPEN_READONLY, _SQLITE_OPEN_READWRITE, _SQLITE_OPEN_CREATE, _SQLITE_OPEN_DELETEONCLOSE, _SQLITE_OPEN_EXCLUSIVE, _SQLITE_OPEN_MAIN_DB, _SQLITE_OPEN_TEMP_DB, _SQLITE_OPEN_TRANSIENT_DB, _SQLITE_OPEN_MAIN_JOURNAL, _SQLITE_OPEN_TEMP_JOURNAL, _SQLITE_OPEN_SUBJOURNAL, _SQLITE_OPEN_MASTER_JOURNAL, _SQLITE_OPEN_NOMUTEX, _SQLITE_OPEN_FULLMUTEX, -- * Device Characteristics -- <http://sqlite.org/c3ref/c_iocap_atomic.html> _SQLITE_IOCAP_ATOMIC, _SQLITE_IOCAP_ATOMIC512, _SQLITE_IOCAP_ATOMIC1K, _SQLITE_IOCAP_ATOMIC2K, _SQLITE_IOCAP_ATOMIC4K, _SQLITE_IOCAP_ATOMIC8K, _SQLITE_IOCAP_ATOMIC16K, _SQLITE_IOCAP_ATOMIC32K, _SQLITE_IOCAP_ATOMIC64K, _SQLITE_IOCAP_SAFE_APPEND, _SQLITE_IOCAP_SEQUENTIAL, -- * File Locking Levels -- <http://sqlite.org/c3ref/c_lock_exclusive.html> _SQLITE_LOCK_NONE, _SQLITE_LOCK_SHARED, _SQLITE_LOCK_RESERVED, _SQLITE_LOCK_PENDING, _SQLITE_LOCK_EXCLUSIVE, -- * Synchronization Type Flags -- <http://sqlite.org/c3ref/c_sync_dataonly.html> _SQLITE_SYNC_NORMAL, _SQLITE_SYNC_FULL, _SQLITE_SYNC_DATAONLY, -- * OS Interface Open File Handle -- <http://sqlite.org/c3ref/file.html> Sqlite3_file, -- * OS Interface File Virtual Methods Object -- <http://sqlite.org/c3ref/io_methods.html> Sqlite3_io_methods, -- * Standard File Control Opcodes -- <http://sqlite.org/c3ref/c_fcntl_lockstate.html> _SQLITE_FCNTL_LOCKSTATE, _SQLITE_GET_LOCKPROXYFILE, _SQLITE_SET_LOCKPROXYFILE, _SQLITE_LAST_ERRNO, -- * Mutex Handle -- <http://sqlite.org/c3ref/mutex.html> Sqlite3_mutex, -- * OS Interface Object -- <http://sqlite.org/c3ref/vfs.html> Sqlite3_vfs, -- * Flags for the xAccess VFS method -- <http://sqlite.org/c3ref/c_access_exists.html> _SQLITE_ACCESS_EXISTS, _SQLITE_ACCESS_READWRITE, _SQLITE_ACCESS_READ, -- * Initialize The SQLite Library -- <http://sqlite.org/c3ref/initialize.html> sqlite3_initialize, sqlite3_shutdown, sqlite3_os_init, sqlite3_os_end, -- * Enable Or Disable Extended Result Codes -- <http://sqlite.org/c3ref/extended_result_codes.html> sqlite3_extended_result_codes, -- * Last Insert Rowid -- <http://sqlite.org/c3ref/last_insert_rowid.html> sqlite3_last_insert_rowid, -- * Count The Number Of Rows Modified -- <http://sqlite.org/c3ref/changes.html> sqlite3_changes, -- * Total Number Of Rows Modified -- <http://sqlite.org/c3ref/total_changes.html> sqlite3_total_changes, -- * Interrupt A Long-Running Query -- <http://sqlite.org/c3ref/interrupt.html> sqlite3_interrupt, -- * Determine If An SQL Statement Is Complete -- <http://sqlite.org/c3ref/complete.html> sqlite3_complete, sqlite3_complete16, -- * Register A Callback To Handle SQLITE_BUSY Errors -- <http://sqlite.org/c3ref/busy_handler.html> sqlite3_busy_handler, -- * Set A Busy Timeout -- <http://sqlite.org/c3ref/busy_timeout.html> sqlite3_busy_timeout, -- * Convenience Routines For Running Queries -- <http://sqlite.org/c3ref/free_table.html> sqlite3_get_table, sqlite3_free_table, -- * Memory Allocation Subsystem -- <http://sqlite.org/c3ref/free.html> sqlite3_malloc, sqlite3_realloc, sqlite3_free, -- * Memory Allocator Statistics -- <http://sqlite.org/c3ref/memory_highwater.html> sqlite3_memory_used, sqlite3_memory_highwater, -- * Pseudo-Random Number Generator -- <http://sqlite.org/c3ref/randomness.html> sqlite3_randomness, -- * Compile-Time Authorization Callbacks -- <http://sqlite.org/c3ref/set_authorizer.html> sqlite3_set_authorizer, -- * Authorizer Return Codes -- <http://sqlite.org/c3ref/c_deny.html> _SQLITE_DENY, _SQLITE_IGNORE, -- * Authorizer Action Codes -- <http://sqlite.org/c3ref/c_alter_table.html> _SQLITE_CREATE_INDEX, _SQLITE_CREATE_TABLE, _SQLITE_CREATE_TEMP_INDEX, _SQLITE_CREATE_TEMP_TABLE, _SQLITE_CREATE_TEMP_TRIGGER, _SQLITE_CREATE_TEMP_VIEW, _SQLITE_CREATE_TRIGGER, _SQLITE_CREATE_VIEW, _SQLITE_DELETE, _SQLITE_DROP_INDEX, _SQLITE_DROP_TABLE, _SQLITE_DROP_TEMP_INDEX, _SQLITE_DROP_TEMP_TABLE, _SQLITE_DROP_TEMP_TRIGGER, _SQLITE_DROP_TEMP_VIEW, _SQLITE_DROP_TRIGGER, _SQLITE_DROP_VIEW, _SQLITE_INSERT, _SQLITE_PRAGMA, _SQLITE_READ, _SQLITE_SELECT, _SQLITE_TRANSACTION, _SQLITE_UPDATE, _SQLITE_ATTACH, _SQLITE_DETACH, _SQLITE_ALTER_TABLE, _SQLITE_REINDEX, _SQLITE_ANALYZE, _SQLITE_CREATE_VTABLE, _SQLITE_DROP_VTABLE, _SQLITE_FUNCTION, _SQLITE_SAVEPOINT, _SQLITE_COPY, -- * Query Progress Callbacks -- <http://sqlite.org/c3ref/progress_handler.html> sqlite3_progress_handler, -- * Opening A New Database Connection -- <http://sqlite.org/c3ref/open.html> sqlite3_open, sqlite3_open16, sqlite3_open_v2, -- * Error Codes And Messages -- <http://sqlite.org/c3ref/errcode.html> sqlite3_errcode, sqlite3_extended_errcode, sqlite3_errmsg, sqlite3_errmsg16, -- * SQL Statement Object -- <http://sqlite.org/c3ref/stmt.html> Sqlite3_stmt, -- * Run-time Limits -- <http://sqlite.org/c3ref/limit.html> sqlite3_limit, -- * Run-Time Limit Categories -- <http://sqlite.org/c3ref/c_limit_attached.html> _SQLITE_LIMIT_LENGTH, _SQLITE_LIMIT_SQL_LENGTH, _SQLITE_LIMIT_COLUMN, _SQLITE_LIMIT_EXPR_DEPTH, _SQLITE_LIMIT_COMPOUND_SELECT, _SQLITE_LIMIT_VDBE_OP, _SQLITE_LIMIT_FUNCTION_ARG, _SQLITE_LIMIT_ATTACHED, _SQLITE_LIMIT_LIKE_PATTERN_LENGTH, _SQLITE_LIMIT_VARIABLE_NUMBER, -- * Compiling An SQL Statement -- <http://sqlite.org/c3ref/prepare.html> sqlite3_prepare, sqlite3_prepare_v2, sqlite3_prepare16, sqlite3_prepare16_v2, -- * Retrieving Statement SQL -- <http://sqlite.org/c3ref/sql.html> sqlite3_sql, -- * Dynamically Typed Value Object -- <http://sqlite.org/c3ref/value.html> Sqlite3_value, -- * SQL Function Context Object -- <http://sqlite.org/c3ref/context.html> Sqlite3_context, -- * Binding Values To Prepared Statements -- <http://sqlite.org/c3ref/bind_blob.html> sqlite3_bind_blob, sqlite3_bind_double, sqlite3_bind_int, sqlite3_bind_int64, sqlite3_bind_null, sqlite3_bind_text, sqlite3_bind_text16, sqlite3_bind_value, sqlite3_bind_zeroblob, -- * Number Of SQL Parameters -- <http://sqlite.org/c3ref/bind_parameter_count.html> sqlite3_bind_parameter_count, -- * Name Of A Host Parameter -- <http://sqlite.org/c3ref/bind_parameter_name.html> sqlite3_bind_parameter_name, -- * Index Of A Parameter With A Given Name -- <http://sqlite.org/c3ref/bind_parameter_index.html> sqlite3_bind_parameter_index, -- * Reset All Bindings On A Prepared Statement -- <http://sqlite.org/c3ref/clear_bindings.html> sqlite3_clear_bindings, -- * Number Of Columns In A Result Set -- <http://sqlite.org/c3ref/column_count.html> sqlite3_column_count, -- * Column Names In A Result Set -- <http://sqlite.org/c3ref/column_name.html> sqlite3_column_name, sqlite3_column_name16, -- * Source Of Data In A Query Result -- <http://sqlite.org/c3ref/column_database_name.html> sqlite3_column_database_name, sqlite3_column_database_name16, sqlite3_column_table_name, sqlite3_column_table_name16, sqlite3_column_origin_name, sqlite3_column_origin_name16, -- * Declared Datatype Of A Query Result -- <http://sqlite.org/c3ref/column_decltype.html> sqlite3_column_decltype, sqlite3_column_decltype16, -- * Evaluate An SQL Statement -- <http://sqlite.org/c3ref/step.html> sqlite3_step, -- * Number of columns in a result set -- <http://sqlite.org/c3ref/data_count.html> sqlite3_data_count, -- * Fundamental Datatypes -- <http://sqlite.org/c3ref/c_blob.html> _SQLITE_INTEGER, _SQLITE_FLOAT, _SQLITE_BLOB, _SQLITE_NULL, _SQLITE3_TEXT, -- * Result Values From A Query -- <http://sqlite.org/c3ref/column_blob.html> sqlite3_column_blob, sqlite3_column_bytes, sqlite3_column_bytes16, sqlite3_column_double, sqlite3_column_int, sqlite3_column_int64, sqlite3_column_text, sqlite3_column_text16, sqlite3_column_type, sqlite3_column_value, -- * Destroy A Prepared Statement Object -- <http://sqlite.org/c3ref/finalize.html> sqlite3_finalize, -- * Reset A Prepared Statement Object -- <http://sqlite.org/c3ref/create_function.html> sqlite3_create_function, sqlite3_create_function16, -- * Text Encodings -- <http://sqlite.org/c3ref/c_any.html> _SQLITE_UTF8, _SQLITE_UTF16LE, _SQLITE_UTF16BE, _SQLITE_UTF16, _SQLITE_ANY, _SQLITE_UTF16_ALIGNED, -- * Obtaining SQL Function Parameter Values -- <http://sqlite.org/c3ref/value_blob.html> sqlite3_value_blob, sqlite3_value_bytes, sqlite3_value_bytes16, sqlite3_value_double, sqlite3_value_int, sqlite3_value_int64, sqlite3_value_text, sqlite3_value_text16, sqlite3_value_text16le, sqlite3_value_text16be, sqlite3_value_type, sqlite3_value_numeric_type, -- * Obtain Aggregate Function Context -- <http://sqlite.org/c3ref/aggregate_context.html> sqlite3_aggregate_context, -- * User Data For Functions -- <http://sqlite.org/c3ref/user_data.html> sqlite3_user_data, -- * Database Connection For Functions -- <http://sqlite.org/c3ref/context_db_handle.html> sqlite3_context_db_handle, -- * Function Auxiliary Data -- <http://sqlite.org/c3ref/get_auxdata.html> sqlite3_get_auxdata, sqlite3_set_auxdata, -- * Constants Defining Special Destructor Behavior -- <http://sqlite.org/c3ref/c_static.html> Sqlite3_destructor_type, _SQLITE_STATIC, _SQLITE_TRANSIENT, -- * Setting The Result Of An SQL Function -- <http://sqlite.org/c3ref/result_blob.html> sqlite3_result_blob, sqlite3_result_double, sqlite3_result_error, sqlite3_result_error16, sqlite3_result_error_toobig, sqlite3_result_error_nomem, sqlite3_result_error_code, sqlite3_result_int, sqlite3_result_int64, sqlite3_result_null, sqlite3_result_text, sqlite3_result_text16, sqlite3_result_text16le, sqlite3_result_text16be, sqlite3_result_value, sqlite3_result_zeroblob, -- * Define New Collating Sequences -- <http://sqlite.org/c3ref/create_collation.html> sqlite3_create_collation, sqlite3_create_collation_v2, sqlite3_create_collation16, -- * Collation Needed Callbacks -- <http://sqlite.org/c3ref/collation_needed.html> sqlite3_collation_needed, sqlite3_collation_needed16, -- * Suspend Execution For A Short Time -- <http://sqlite.org/c3ref/sleep.html> sqlite3_sleep, -- * Name Of The Folder Holding Temporary Files -- <http://sqlite.org/c3ref/temp_directory.html> sqlite_temp_directory, -- * Test For Auto-Commit Mode -- <http://sqlite.org/c3ref/get_autocommit.html> sqlite3_get_autocommit, -- * Find The Database Handle Of A Prepared Statement -- <http://sqlite.org/c3ref/db_handle.html> sqlite3_db_handle, -- * Find the next prepared statement -- <http://sqlite.org/c3ref/next_stmt.html> sqlite3_next_stmt, -- * Commit And Rollback Notification Callbacks -- <http://sqlite.org/c3ref/commit_hook.html> sqlite3_commit_hook, sqlite3_rollback_hook, -- * Data Change Notification Callbacks -- <http://sqlite.org/c3ref/update_hook.html> sqlite3_update_hook, -- * Enable Or Disable Shared Pager Cache -- <http://sqlite.org/c3ref/enable_shared_cache.html> sqlite3_enable_shared_cache, -- * Attempt To Free Heap Memory -- <http://sqlite.org/c3ref/release_memory.html> sqlite3_release_memory, -- * Impose A Limit On Heap Size -- <http://sqlite.org/c3ref/soft_heap_limit.html> sqlite3_soft_heap_limit, -- * Load An Extension -- <http://sqlite.org/c3ref/load_extension.html> sqlite3_load_extension, -- * Enable Or Disable Extension Loading -- <http://sqlite.org/c3ref/enable_load_extension.html> sqlite3_enable_load_extension, -- * Automatically Load An Extensions -- <http://sqlite.org/c3ref/auto_extension.html> sqlite3_auto_extension, -- * Reset Automatic Extension Loading -- <http://sqlite.org/c3ref/reset_auto_extension.html> sqlite3_reset_auto_extension, -- * A Handle To An Open BLOB -- <http://sqlite.org/c3ref/blob.html> Sqlite3_blob, -- * Open A BLOB For Incremental I/O -- <http://sqlite.org/c3ref/blob_open.html> sqlite3_blob_open, -- * Close A BLOB Handle -- <http://sqlite.org/c3ref/blob_close.html> sqlite3_blob_close, -- * Return The Size Of An Open BLOB -- <http://sqlite.org/c3ref/blob_bytes.html> sqlite3_blob_bytes, -- * Read Data From A BLOB Incrementally -- <http://sqlite.org/c3ref/blob_read.html> sqlite3_blob_read, -- * Write Data Into A BLOB Incrementally -- <http://sqlite.org/c3ref/blob_write.html> sqlite3_blob_write, -- * Virtual File System Objects -- <http://sqlite.org/c3ref/vfs_find.html> sqlite3_vfs_find, sqlite3_vfs_register, sqlite3_vfs_unregister, -- * Mutexes -- <http://sqlite.org/c3ref/mutex_alloc.html> sqlite3_mutex_alloc, sqlite3_mutex_free, sqlite3_mutex_enter, sqlite3_mutex_try, sqlite3_mutex_leave, -- * Mutex Verification Routines -- <http://sqlite.org/c3ref/mutex_held.html> sqlite3_mutex_held, sqlite3_mutex_notheld, -- * Mutex Types -- <http://sqlite.org/c3ref/c_mutex_fast.html> _SQLITE_MUTEX_FAST, _SQLITE_MUTEX_RECURSIVE, _SQLITE_MUTEX_STATIC_MASTER, _SQLITE_MUTEX_STATIC_MEM, _SQLITE_MUTEX_STATIC_MEM2, _SQLITE_MUTEX_STATIC_PRNG, _SQLITE_MUTEX_STATIC_LRU, _SQLITE_MUTEX_STATIC_LRU2, -- * Retrieve the mutex for a database connection -- <http://sqlite.org/c3ref/db_mutex.html> sqlite3_db_mutex, -- * Low-Level Control Of Database Files -- <http://sqlite.org/c3ref/file_control.html> sqlite3_file_control ) where import Sqlite3Constants import Sqlite3Types import Sqlite3Functions