49 # define SQLITE_EXTERN extern 57 #ifndef SQLITE_APICALL 58 # define SQLITE_APICALL 60 #ifndef SQLITE_STDCALL 61 # define SQLITE_STDCALL SQLITE_APICALL 63 #ifndef SQLITE_CALLBACK 64 # define SQLITE_CALLBACK 67 # define SQLITE_SYSAPI 83 #define SQLITE_DEPRECATED 84 #define SQLITE_EXPERIMENTAL 90 # undef SQLITE_VERSION 92 #ifdef SQLITE_VERSION_NUMBER 93 # undef SQLITE_VERSION_NUMBER 123 #define SQLITE_VERSION "3.14.1" 124 #define SQLITE_VERSION_NUMBER 3014001 125 #define SQLITE_SOURCE_ID "2016-08-11 18:53:32 a12d8059770df4bca59e321c266410344242bf7b" 157 SQLITE_API SQLITE_EXTERN
const char sqlite3_version[];
158 SQLITE_API
const char *SQLITE_STDCALL sqlite3_libversion(
void);
159 SQLITE_API
const char *SQLITE_STDCALL sqlite3_sourceid(
void);
160 SQLITE_API
int SQLITE_STDCALL sqlite3_libversion_number(
void);
184 #ifndef SQLITE_OMIT_COMPILEOPTION_DIAGS 185 SQLITE_API
int SQLITE_STDCALL sqlite3_compileoption_used(
const char *zOptName);
186 SQLITE_API
const char *SQLITE_STDCALL sqlite3_compileoption_get(
int N);
225 SQLITE_API
int SQLITE_STDCALL sqlite3_threadsafe(
void);
241 typedef struct sqlite3 sqlite3;
259 #ifdef SQLITE_INT64_TYPE 260 typedef SQLITE_INT64_TYPE sqlite_int64;
261 typedef unsigned SQLITE_INT64_TYPE sqlite_uint64;
262 #elif defined(_MSC_VER) || defined(__BORLANDC__) 263 typedef __int64 sqlite_int64;
264 typedef unsigned __int64 sqlite_uint64;
266 typedef long long int sqlite_int64;
267 typedef unsigned long long int sqlite_uint64;
269 typedef sqlite_int64 sqlite3_int64;
270 typedef sqlite_uint64 sqlite3_uint64;
276 #ifdef SQLITE_OMIT_FLOATING_POINT 277 # define double sqlite3_int64 322 SQLITE_API
int SQLITE_STDCALL sqlite3_close(sqlite3*);
323 SQLITE_API
int SQLITE_STDCALL sqlite3_close_v2(sqlite3*);
330 typedef int (*sqlite3_callback)(
void*,int,
char**,
char**);
394 SQLITE_API
int SQLITE_STDCALL sqlite3_exec(
397 int (*callback)(
void*,
int,
char**,
char**),
415 #define SQLITE_ERROR 1 416 #define SQLITE_INTERNAL 2 417 #define SQLITE_PERM 3 418 #define SQLITE_ABORT 4 419 #define SQLITE_BUSY 5 420 #define SQLITE_LOCKED 6 421 #define SQLITE_NOMEM 7 422 #define SQLITE_READONLY 8 423 #define SQLITE_INTERRUPT 9 424 #define SQLITE_IOERR 10 425 #define SQLITE_CORRUPT 11 426 #define SQLITE_NOTFOUND 12 427 #define SQLITE_FULL 13 428 #define SQLITE_CANTOPEN 14 429 #define SQLITE_PROTOCOL 15 430 #define SQLITE_EMPTY 16 431 #define SQLITE_SCHEMA 17 432 #define SQLITE_TOOBIG 18 433 #define SQLITE_CONSTRAINT 19 434 #define SQLITE_MISMATCH 20 435 #define SQLITE_MISUSE 21 436 #define SQLITE_NOLFS 22 437 #define SQLITE_AUTH 23 438 #define SQLITE_FORMAT 24 439 #define SQLITE_RANGE 25 440 #define SQLITE_NOTADB 26 441 #define SQLITE_NOTICE 27 442 #define SQLITE_WARNING 28 443 #define SQLITE_ROW 100 444 #define SQLITE_DONE 101 463 #define SQLITE_IOERR_READ (SQLITE_IOERR | (1<<8)) 464 #define SQLITE_IOERR_SHORT_READ (SQLITE_IOERR | (2<<8)) 465 #define SQLITE_IOERR_WRITE (SQLITE_IOERR | (3<<8)) 466 #define SQLITE_IOERR_FSYNC (SQLITE_IOERR | (4<<8)) 467 #define SQLITE_IOERR_DIR_FSYNC (SQLITE_IOERR | (5<<8)) 468 #define SQLITE_IOERR_TRUNCATE (SQLITE_IOERR | (6<<8)) 469 #define SQLITE_IOERR_FSTAT (SQLITE_IOERR | (7<<8)) 470 #define SQLITE_IOERR_UNLOCK (SQLITE_IOERR | (8<<8)) 471 #define SQLITE_IOERR_RDLOCK (SQLITE_IOERR | (9<<8)) 472 #define SQLITE_IOERR_DELETE (SQLITE_IOERR | (10<<8)) 473 #define SQLITE_IOERR_BLOCKED (SQLITE_IOERR | (11<<8)) 474 #define SQLITE_IOERR_NOMEM (SQLITE_IOERR | (12<<8)) 475 #define SQLITE_IOERR_ACCESS (SQLITE_IOERR | (13<<8)) 476 #define SQLITE_IOERR_CHECKRESERVEDLOCK (SQLITE_IOERR | (14<<8)) 477 #define SQLITE_IOERR_LOCK (SQLITE_IOERR | (15<<8)) 478 #define SQLITE_IOERR_CLOSE (SQLITE_IOERR | (16<<8)) 479 #define SQLITE_IOERR_DIR_CLOSE (SQLITE_IOERR | (17<<8)) 480 #define SQLITE_IOERR_SHMOPEN (SQLITE_IOERR | (18<<8)) 481 #define SQLITE_IOERR_SHMSIZE (SQLITE_IOERR | (19<<8)) 482 #define SQLITE_IOERR_SHMLOCK (SQLITE_IOERR | (20<<8)) 483 #define SQLITE_IOERR_SHMMAP (SQLITE_IOERR | (21<<8)) 484 #define SQLITE_IOERR_SEEK (SQLITE_IOERR | (22<<8)) 485 #define SQLITE_IOERR_DELETE_NOENT (SQLITE_IOERR | (23<<8)) 486 #define SQLITE_IOERR_MMAP (SQLITE_IOERR | (24<<8)) 487 #define SQLITE_IOERR_GETTEMPPATH (SQLITE_IOERR | (25<<8)) 488 #define SQLITE_IOERR_CONVPATH (SQLITE_IOERR | (26<<8)) 489 #define SQLITE_IOERR_VNODE (SQLITE_IOERR | (27<<8)) 490 #define SQLITE_IOERR_AUTH (SQLITE_IOERR | (28<<8)) 491 #define SQLITE_LOCKED_SHAREDCACHE (SQLITE_LOCKED | (1<<8)) 492 #define SQLITE_BUSY_RECOVERY (SQLITE_BUSY | (1<<8)) 493 #define SQLITE_BUSY_SNAPSHOT (SQLITE_BUSY | (2<<8)) 494 #define SQLITE_CANTOPEN_NOTEMPDIR (SQLITE_CANTOPEN | (1<<8)) 495 #define SQLITE_CANTOPEN_ISDIR (SQLITE_CANTOPEN | (2<<8)) 496 #define SQLITE_CANTOPEN_FULLPATH (SQLITE_CANTOPEN | (3<<8)) 497 #define SQLITE_CANTOPEN_CONVPATH (SQLITE_CANTOPEN | (4<<8)) 498 #define SQLITE_CORRUPT_VTAB (SQLITE_CORRUPT | (1<<8)) 499 #define SQLITE_READONLY_RECOVERY (SQLITE_READONLY | (1<<8)) 500 #define SQLITE_READONLY_CANTLOCK (SQLITE_READONLY | (2<<8)) 501 #define SQLITE_READONLY_ROLLBACK (SQLITE_READONLY | (3<<8)) 502 #define SQLITE_READONLY_DBMOVED (SQLITE_READONLY | (4<<8)) 503 #define SQLITE_ABORT_ROLLBACK (SQLITE_ABORT | (2<<8)) 504 #define SQLITE_CONSTRAINT_CHECK (SQLITE_CONSTRAINT | (1<<8)) 505 #define SQLITE_CONSTRAINT_COMMITHOOK (SQLITE_CONSTRAINT | (2<<8)) 506 #define SQLITE_CONSTRAINT_FOREIGNKEY (SQLITE_CONSTRAINT | (3<<8)) 507 #define SQLITE_CONSTRAINT_FUNCTION (SQLITE_CONSTRAINT | (4<<8)) 508 #define SQLITE_CONSTRAINT_NOTNULL (SQLITE_CONSTRAINT | (5<<8)) 509 #define SQLITE_CONSTRAINT_PRIMARYKEY (SQLITE_CONSTRAINT | (6<<8)) 510 #define SQLITE_CONSTRAINT_TRIGGER (SQLITE_CONSTRAINT | (7<<8)) 511 #define SQLITE_CONSTRAINT_UNIQUE (SQLITE_CONSTRAINT | (8<<8)) 512 #define SQLITE_CONSTRAINT_VTAB (SQLITE_CONSTRAINT | (9<<8)) 513 #define SQLITE_CONSTRAINT_ROWID (SQLITE_CONSTRAINT |(10<<8)) 514 #define SQLITE_NOTICE_RECOVER_WAL (SQLITE_NOTICE | (1<<8)) 515 #define SQLITE_NOTICE_RECOVER_ROLLBACK (SQLITE_NOTICE | (2<<8)) 516 #define SQLITE_WARNING_AUTOINDEX (SQLITE_WARNING | (1<<8)) 517 #define SQLITE_AUTH_USER (SQLITE_AUTH | (1<<8)) 518 #define SQLITE_OK_LOAD_PERMANENTLY (SQLITE_OK | (1<<8)) 527 #define SQLITE_OPEN_READONLY 0x00000001 528 #define SQLITE_OPEN_READWRITE 0x00000002 529 #define SQLITE_OPEN_CREATE 0x00000004 530 #define SQLITE_OPEN_DELETEONCLOSE 0x00000008 531 #define SQLITE_OPEN_EXCLUSIVE 0x00000010 532 #define SQLITE_OPEN_AUTOPROXY 0x00000020 533 #define SQLITE_OPEN_URI 0x00000040 534 #define SQLITE_OPEN_MEMORY 0x00000080 535 #define SQLITE_OPEN_MAIN_DB 0x00000100 536 #define SQLITE_OPEN_TEMP_DB 0x00000200 537 #define SQLITE_OPEN_TRANSIENT_DB 0x00000400 538 #define SQLITE_OPEN_MAIN_JOURNAL 0x00000800 539 #define SQLITE_OPEN_TEMP_JOURNAL 0x00001000 540 #define SQLITE_OPEN_SUBJOURNAL 0x00002000 541 #define SQLITE_OPEN_MASTER_JOURNAL 0x00004000 542 #define SQLITE_OPEN_NOMUTEX 0x00008000 543 #define SQLITE_OPEN_FULLMUTEX 0x00010000 544 #define SQLITE_OPEN_SHAREDCACHE 0x00020000 545 #define SQLITE_OPEN_PRIVATECACHE 0x00040000 546 #define SQLITE_OPEN_WAL 0x00080000 578 #define SQLITE_IOCAP_ATOMIC 0x00000001 579 #define SQLITE_IOCAP_ATOMIC512 0x00000002 580 #define SQLITE_IOCAP_ATOMIC1K 0x00000004 581 #define SQLITE_IOCAP_ATOMIC2K 0x00000008 582 #define SQLITE_IOCAP_ATOMIC4K 0x00000010 583 #define SQLITE_IOCAP_ATOMIC8K 0x00000020 584 #define SQLITE_IOCAP_ATOMIC16K 0x00000040 585 #define SQLITE_IOCAP_ATOMIC32K 0x00000080 586 #define SQLITE_IOCAP_ATOMIC64K 0x00000100 587 #define SQLITE_IOCAP_SAFE_APPEND 0x00000200 588 #define SQLITE_IOCAP_SEQUENTIAL 0x00000400 589 #define SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN 0x00000800 590 #define SQLITE_IOCAP_POWERSAFE_OVERWRITE 0x00001000 591 #define SQLITE_IOCAP_IMMUTABLE 0x00002000 600 #define SQLITE_LOCK_NONE 0 601 #define SQLITE_LOCK_SHARED 1 602 #define SQLITE_LOCK_RESERVED 2 603 #define SQLITE_LOCK_PENDING 3 604 #define SQLITE_LOCK_EXCLUSIVE 4 632 #define SQLITE_SYNC_NORMAL 0x00002 633 #define SQLITE_SYNC_FULL 0x00003 634 #define SQLITE_SYNC_DATAONLY 0x00010 647 typedef struct sqlite3_file sqlite3_file;
648 struct sqlite3_file {
649 const struct sqlite3_io_methods *pMethods;
742 typedef struct sqlite3_io_methods sqlite3_io_methods;
743 struct sqlite3_io_methods {
745 int (*xClose)(sqlite3_file*);
746 int (*xRead)(sqlite3_file*,
void*,
int iAmt, sqlite3_int64 iOfst);
747 int (*xWrite)(sqlite3_file*,
const void*,
int iAmt, sqlite3_int64 iOfst);
748 int (*xTruncate)(sqlite3_file*, sqlite3_int64 size);
749 int (*xSync)(sqlite3_file*,
int flags);
750 int (*xFileSize)(sqlite3_file*, sqlite3_int64 *pSize);
751 int (*xLock)(sqlite3_file*, int);
752 int (*xUnlock)(sqlite3_file*, int);
753 int (*xCheckReservedLock)(sqlite3_file*,
int *pResOut);
754 int (*xFileControl)(sqlite3_file*,
int op,
void *pArg);
755 int (*xSectorSize)(sqlite3_file*);
756 int (*xDeviceCharacteristics)(sqlite3_file*);
758 int (*xShmMap)(sqlite3_file*,
int iPg,
int pgsz, int,
void volatile**);
759 int (*xShmLock)(sqlite3_file*,
int offset,
int n,
int flags);
760 void (*xShmBarrier)(sqlite3_file*);
761 int (*xShmUnmap)(sqlite3_file*,
int deleteFlag);
763 int (*xFetch)(sqlite3_file*, sqlite3_int64 iOfst,
int iAmt,
void **pp);
764 int (*xUnfetch)(sqlite3_file*, sqlite3_int64 iOfst,
void *p);
1002 #define SQLITE_FCNTL_LOCKSTATE 1 1003 #define SQLITE_FCNTL_GET_LOCKPROXYFILE 2 1004 #define SQLITE_FCNTL_SET_LOCKPROXYFILE 3 1005 #define SQLITE_FCNTL_LAST_ERRNO 4 1006 #define SQLITE_FCNTL_SIZE_HINT 5 1007 #define SQLITE_FCNTL_CHUNK_SIZE 6 1008 #define SQLITE_FCNTL_FILE_POINTER 7 1009 #define SQLITE_FCNTL_SYNC_OMITTED 8 1010 #define SQLITE_FCNTL_WIN32_AV_RETRY 9 1011 #define SQLITE_FCNTL_PERSIST_WAL 10 1012 #define SQLITE_FCNTL_OVERWRITE 11 1013 #define SQLITE_FCNTL_VFSNAME 12 1014 #define SQLITE_FCNTL_POWERSAFE_OVERWRITE 13 1015 #define SQLITE_FCNTL_PRAGMA 14 1016 #define SQLITE_FCNTL_BUSYHANDLER 15 1017 #define SQLITE_FCNTL_TEMPFILENAME 16 1018 #define SQLITE_FCNTL_MMAP_SIZE 18 1019 #define SQLITE_FCNTL_TRACE 19 1020 #define SQLITE_FCNTL_HAS_MOVED 20 1021 #define SQLITE_FCNTL_SYNC 21 1022 #define SQLITE_FCNTL_COMMIT_PHASETWO 22 1023 #define SQLITE_FCNTL_WIN32_SET_HANDLE 23 1024 #define SQLITE_FCNTL_WAL_BLOCK 24 1025 #define SQLITE_FCNTL_ZIPVFS 25 1026 #define SQLITE_FCNTL_RBU 26 1027 #define SQLITE_FCNTL_VFS_POINTER 27 1028 #define SQLITE_FCNTL_JOURNAL_POINTER 28 1031 #define SQLITE_GET_LOCKPROXYFILE SQLITE_FCNTL_GET_LOCKPROXYFILE 1032 #define SQLITE_SET_LOCKPROXYFILE SQLITE_FCNTL_SET_LOCKPROXYFILE 1033 #define SQLITE_LAST_ERRNO SQLITE_FCNTL_LAST_ERRNO 1046 typedef struct sqlite3_mutex sqlite3_mutex;
1056 typedef struct sqlite3_api_routines sqlite3_api_routines;
1215 typedef struct sqlite3_vfs sqlite3_vfs;
1216 typedef void (*sqlite3_syscall_ptr)(void);
1217 struct sqlite3_vfs {
1224 int (*xOpen)(sqlite3_vfs*,
const char *zName, sqlite3_file*,
1225 int flags,
int *pOutFlags);
1226 int (*xDelete)(sqlite3_vfs*,
const char *zName,
int syncDir);
1227 int (*xAccess)(sqlite3_vfs*,
const char *zName,
int flags,
int *pResOut);
1228 int (*xFullPathname)(sqlite3_vfs*,
const char *zName,
int nOut,
char *zOut);
1229 void *(*xDlOpen)(sqlite3_vfs*,
const char *zFilename);
1230 void (*xDlError)(sqlite3_vfs*,
int nByte,
char *zErrMsg);
1231 void (*(*xDlSym)(sqlite3_vfs*,
void*,
const char *zSymbol))(void);
1232 void (*xDlClose)(sqlite3_vfs*,
void*);
1233 int (*xRandomness)(sqlite3_vfs*,
int nByte,
char *zOut);
1234 int (*xSleep)(sqlite3_vfs*,
int microseconds);
1235 int (*xCurrentTime)(sqlite3_vfs*,
double*);
1236 int (*xGetLastError)(sqlite3_vfs*, int,
char *);
1241 int (*xCurrentTimeInt64)(sqlite3_vfs*, sqlite3_int64*);
1246 int (*xSetSystemCall)(sqlite3_vfs*,
const char *zName, sqlite3_syscall_ptr);
1247 sqlite3_syscall_ptr (*xGetSystemCall)(sqlite3_vfs*,
const char *zName);
1248 const char *(*xNextSystemCall)(sqlite3_vfs*,
const char *zName);
1276 #define SQLITE_ACCESS_EXISTS 0 1277 #define SQLITE_ACCESS_READWRITE 1 1278 #define SQLITE_ACCESS_READ 2 1302 #define SQLITE_SHM_UNLOCK 1 1303 #define SQLITE_SHM_LOCK 2 1304 #define SQLITE_SHM_SHARED 4 1305 #define SQLITE_SHM_EXCLUSIVE 8 1315 #define SQLITE_SHM_NLOCK 8 1393 SQLITE_API
int SQLITE_STDCALL sqlite3_initialize(
void);
1394 SQLITE_API
int SQLITE_STDCALL sqlite3_shutdown(
void);
1395 SQLITE_API
int SQLITE_STDCALL sqlite3_os_init(
void);
1396 SQLITE_API
int SQLITE_STDCALL sqlite3_os_end(
void);
1429 SQLITE_API
int SQLITE_CDECL sqlite3_config(
int, ...);
1448 SQLITE_API
int SQLITE_CDECL sqlite3_db_config(sqlite3*,
int op, ...);
1513 typedef struct sqlite3_mem_methods sqlite3_mem_methods;
1514 struct sqlite3_mem_methods {
1515 void *(*xMalloc)(int);
1516 void (*xFree)(
void*);
1517 void *(*xRealloc)(
void*,int);
1518 int (*xSize)(
void*);
1519 int (*xRoundup)(int);
1520 int (*xInit)(
void*);
1521 void (*xShutdown)(
void*);
1859 #define SQLITE_CONFIG_SINGLETHREAD 1 1860 #define SQLITE_CONFIG_MULTITHREAD 2 1861 #define SQLITE_CONFIG_SERIALIZED 3 1862 #define SQLITE_CONFIG_MALLOC 4 1863 #define SQLITE_CONFIG_GETMALLOC 5 1864 #define SQLITE_CONFIG_SCRATCH 6 1865 #define SQLITE_CONFIG_PAGECACHE 7 1866 #define SQLITE_CONFIG_HEAP 8 1867 #define SQLITE_CONFIG_MEMSTATUS 9 1868 #define SQLITE_CONFIG_MUTEX 10 1869 #define SQLITE_CONFIG_GETMUTEX 11 1871 #define SQLITE_CONFIG_LOOKASIDE 13 1872 #define SQLITE_CONFIG_PCACHE 14 1873 #define SQLITE_CONFIG_GETPCACHE 15 1874 #define SQLITE_CONFIG_LOG 16 1875 #define SQLITE_CONFIG_URI 17 1876 #define SQLITE_CONFIG_PCACHE2 18 1877 #define SQLITE_CONFIG_GETPCACHE2 19 1878 #define SQLITE_CONFIG_COVERING_INDEX_SCAN 20 1879 #define SQLITE_CONFIG_SQLLOG 21 1880 #define SQLITE_CONFIG_MMAP_SIZE 22 1881 #define SQLITE_CONFIG_WIN32_HEAPSIZE 23 1882 #define SQLITE_CONFIG_PCACHE_HDRSZ 24 1883 #define SQLITE_CONFIG_PMASZ 25 1884 #define SQLITE_CONFIG_STMTJRNL_SPILL 26 1974 #define SQLITE_DBCONFIG_LOOKASIDE 1001 1975 #define SQLITE_DBCONFIG_ENABLE_FKEY 1002 1976 #define SQLITE_DBCONFIG_ENABLE_TRIGGER 1003 1977 #define SQLITE_DBCONFIG_ENABLE_FTS3_TOKENIZER 1004 1978 #define SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION 1005 1989 SQLITE_API
int SQLITE_STDCALL sqlite3_extended_result_codes(sqlite3*,
int onoff);
2041 SQLITE_API sqlite3_int64 SQLITE_STDCALL sqlite3_last_insert_rowid(sqlite3*);
2094 SQLITE_API
int SQLITE_STDCALL sqlite3_changes(sqlite3*);
2118 SQLITE_API
int SQLITE_STDCALL sqlite3_total_changes(sqlite3*);
2158 SQLITE_API
void SQLITE_STDCALL sqlite3_interrupt(sqlite3*);
2193 SQLITE_API
int SQLITE_STDCALL sqlite3_complete(
const char *sql);
2194 SQLITE_API
int SQLITE_STDCALL sqlite3_complete16(
const void *sql);
2255 SQLITE_API
int SQLITE_STDCALL sqlite3_busy_handler(sqlite3*,
int(*)(
void*,
int),
void*);
2278 SQLITE_API
int SQLITE_STDCALL sqlite3_busy_timeout(sqlite3*,
int ms);
2353 SQLITE_API
int SQLITE_STDCALL sqlite3_get_table(
2361 SQLITE_API
void SQLITE_STDCALL sqlite3_free_table(
char **result);
2467 SQLITE_API
char *SQLITE_CDECL sqlite3_mprintf(
const char*,...);
2468 SQLITE_API
char *SQLITE_STDCALL sqlite3_vmprintf(
const char*, va_list);
2469 SQLITE_API
char *SQLITE_CDECL sqlite3_snprintf(
int,
char*,
const char*, ...);
2470 SQLITE_API
char *SQLITE_STDCALL sqlite3_vsnprintf(
int,
char*,
const char*, va_list);
2560 SQLITE_API
void *SQLITE_STDCALL sqlite3_malloc(
int);
2561 SQLITE_API
void *SQLITE_STDCALL sqlite3_malloc64(sqlite3_uint64);
2562 SQLITE_API
void *SQLITE_STDCALL sqlite3_realloc(
void*,
int);
2563 SQLITE_API
void *SQLITE_STDCALL sqlite3_realloc64(
void*, sqlite3_uint64);
2564 SQLITE_API
void SQLITE_STDCALL sqlite3_free(
void*);
2565 SQLITE_API sqlite3_uint64 SQLITE_STDCALL sqlite3_msize(
void*);
2590 SQLITE_API sqlite3_int64 SQLITE_STDCALL sqlite3_memory_used(
void);
2591 SQLITE_API sqlite3_int64 SQLITE_STDCALL sqlite3_memory_highwater(
int resetFlag);
2614 SQLITE_API
void SQLITE_STDCALL sqlite3_randomness(
int N,
void *P);
2697 SQLITE_API
int SQLITE_STDCALL sqlite3_set_authorizer(
2699 int (*xAuth)(
void*,
int,
const char*,
const char*,
const char*,
const char*),
2715 #define SQLITE_DENY 1 2716 #define SQLITE_IGNORE 2 2738 #define SQLITE_CREATE_INDEX 1 2739 #define SQLITE_CREATE_TABLE 2 2740 #define SQLITE_CREATE_TEMP_INDEX 3 2741 #define SQLITE_CREATE_TEMP_TABLE 4 2742 #define SQLITE_CREATE_TEMP_TRIGGER 5 2743 #define SQLITE_CREATE_TEMP_VIEW 6 2744 #define SQLITE_CREATE_TRIGGER 7 2745 #define SQLITE_CREATE_VIEW 8 2746 #define SQLITE_DELETE 9 2747 #define SQLITE_DROP_INDEX 10 2748 #define SQLITE_DROP_TABLE 11 2749 #define SQLITE_DROP_TEMP_INDEX 12 2750 #define SQLITE_DROP_TEMP_TABLE 13 2751 #define SQLITE_DROP_TEMP_TRIGGER 14 2752 #define SQLITE_DROP_TEMP_VIEW 15 2753 #define SQLITE_DROP_TRIGGER 16 2754 #define SQLITE_DROP_VIEW 17 2755 #define SQLITE_INSERT 18 2756 #define SQLITE_PRAGMA 19 2757 #define SQLITE_READ 20 2758 #define SQLITE_SELECT 21 2759 #define SQLITE_TRANSACTION 22 2760 #define SQLITE_UPDATE 23 2761 #define SQLITE_ATTACH 24 2762 #define SQLITE_DETACH 25 2763 #define SQLITE_ALTER_TABLE 26 2764 #define SQLITE_REINDEX 27 2765 #define SQLITE_ANALYZE 28 2766 #define SQLITE_CREATE_VTABLE 29 2767 #define SQLITE_DROP_VTABLE 30 2768 #define SQLITE_FUNCTION 31 2769 #define SQLITE_SAVEPOINT 32 2770 #define SQLITE_COPY 0 2771 #define SQLITE_RECURSIVE 33 2805 SQLITE_API SQLITE_DEPRECATED
void *SQLITE_STDCALL sqlite3_trace(sqlite3*,
2806 void(*xTrace)(
void*,
const char*),
void*);
2807 SQLITE_API SQLITE_DEPRECATED
void *SQLITE_STDCALL sqlite3_profile(sqlite3*,
2808 void(*xProfile)(
void*,
const char*,sqlite3_uint64),
void*);
2862 #define SQLITE_TRACE_STMT 0x01 2863 #define SQLITE_TRACE_PROFILE 0x02 2864 #define SQLITE_TRACE_ROW 0x04 2865 #define SQLITE_TRACE_CLOSE 0x08 2896 SQLITE_API
int SQLITE_STDCALL sqlite3_trace_v2(
2899 int(*xCallback)(
unsigned,
void*,
void*,
void*),
2935 SQLITE_API
void SQLITE_STDCALL sqlite3_progress_handler(sqlite3*,
int,
int(*)(
void*),
void*);
3164 SQLITE_API
int SQLITE_STDCALL sqlite3_open(
3165 const char *filename,
3168 SQLITE_API
int SQLITE_STDCALL sqlite3_open16(
3169 const void *filename,
3172 SQLITE_API
int SQLITE_STDCALL sqlite3_open_v2(
3173 const char *filename,
3218 SQLITE_API
const char *SQLITE_STDCALL sqlite3_uri_parameter(
const char *zFilename,
const char *zParam);
3219 SQLITE_API
int SQLITE_STDCALL sqlite3_uri_boolean(
const char *zFile,
const char *zParam,
int bDefault);
3220 SQLITE_API sqlite3_int64 SQLITE_STDCALL sqlite3_uri_int64(
const char*,
const char*, sqlite3_int64);
3264 SQLITE_API
int SQLITE_STDCALL sqlite3_errcode(sqlite3 *db);
3265 SQLITE_API
int SQLITE_STDCALL sqlite3_extended_errcode(sqlite3 *db);
3266 SQLITE_API
const char *SQLITE_STDCALL sqlite3_errmsg(sqlite3*);
3267 SQLITE_API
const void *SQLITE_STDCALL sqlite3_errmsg16(sqlite3*);
3268 SQLITE_API
const char *SQLITE_STDCALL sqlite3_errstr(
int);
3294 typedef struct sqlite3_stmt sqlite3_stmt;
3336 SQLITE_API
int SQLITE_STDCALL sqlite3_limit(sqlite3*,
int id,
int newVal);
3394 #define SQLITE_LIMIT_LENGTH 0 3395 #define SQLITE_LIMIT_SQL_LENGTH 1 3396 #define SQLITE_LIMIT_COLUMN 2 3397 #define SQLITE_LIMIT_EXPR_DEPTH 3 3398 #define SQLITE_LIMIT_COMPOUND_SELECT 4 3399 #define SQLITE_LIMIT_VDBE_OP 5 3400 #define SQLITE_LIMIT_FUNCTION_ARG 6 3401 #define SQLITE_LIMIT_ATTACHED 7 3402 #define SQLITE_LIMIT_LIKE_PATTERN_LENGTH 8 3403 #define SQLITE_LIMIT_VARIABLE_NUMBER 9 3404 #define SQLITE_LIMIT_TRIGGER_DEPTH 10 3405 #define SQLITE_LIMIT_WORKER_THREADS 11 3488 SQLITE_API
int SQLITE_STDCALL sqlite3_prepare(
3492 sqlite3_stmt **ppStmt,
3495 SQLITE_API
int SQLITE_STDCALL sqlite3_prepare_v2(
3499 sqlite3_stmt **ppStmt,
3502 SQLITE_API
int SQLITE_STDCALL sqlite3_prepare16(
3506 sqlite3_stmt **ppStmt,
3509 SQLITE_API
int SQLITE_STDCALL sqlite3_prepare16_v2(
3513 sqlite3_stmt **ppStmt,
3548 SQLITE_API
const char *SQLITE_STDCALL sqlite3_sql(sqlite3_stmt *pStmt);
3549 SQLITE_API
char *SQLITE_STDCALL sqlite3_expanded_sql(sqlite3_stmt *pStmt);
3581 SQLITE_API
int SQLITE_STDCALL sqlite3_stmt_readonly(sqlite3_stmt *pStmt);
3602 SQLITE_API
int SQLITE_STDCALL sqlite3_stmt_busy(sqlite3_stmt*);
3643 typedef struct Mem sqlite3_value;
3657 typedef struct sqlite3_context sqlite3_context;
3766 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_blob(sqlite3_stmt*,
int,
const void*,
int n,
void(*)(
void*));
3767 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_blob64(sqlite3_stmt*,
int,
const void*, sqlite3_uint64,
3769 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_double(sqlite3_stmt*,
int,
double);
3770 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_int(sqlite3_stmt*,
int,
int);
3771 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_int64(sqlite3_stmt*,
int, sqlite3_int64);
3772 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_null(sqlite3_stmt*,
int);
3773 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_text(sqlite3_stmt*,
int,
const char*,
int,
void(*)(
void*));
3774 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_text16(sqlite3_stmt*,
int,
const void*,
int,
void(*)(
void*));
3775 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_text64(sqlite3_stmt*,
int,
const char*, sqlite3_uint64,
3776 void(*)(
void*),
unsigned char encoding);
3777 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_value(sqlite3_stmt*,
int,
const sqlite3_value*);
3778 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_zeroblob(sqlite3_stmt*,
int,
int n);
3779 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_zeroblob64(sqlite3_stmt*,
int, sqlite3_uint64);
3800 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_parameter_count(sqlite3_stmt*);
3828 SQLITE_API
const char *SQLITE_STDCALL sqlite3_bind_parameter_name(sqlite3_stmt*,
int);
3845 SQLITE_API
int SQLITE_STDCALL sqlite3_bind_parameter_index(sqlite3_stmt*,
const char *zName);
3855 SQLITE_API
int SQLITE_STDCALL sqlite3_clear_bindings(sqlite3_stmt*);
3867 SQLITE_API
int SQLITE_STDCALL sqlite3_column_count(sqlite3_stmt *pStmt);
3896 SQLITE_API
const char *SQLITE_STDCALL sqlite3_column_name(sqlite3_stmt*,
int N);
3897 SQLITE_API
const void *SQLITE_STDCALL sqlite3_column_name16(sqlite3_stmt*,
int N);
3945 SQLITE_API
const char *SQLITE_STDCALL sqlite3_column_database_name(sqlite3_stmt*,
int);
3946 SQLITE_API
const void *SQLITE_STDCALL sqlite3_column_database_name16(sqlite3_stmt*,
int);
3947 SQLITE_API
const char *SQLITE_STDCALL sqlite3_column_table_name(sqlite3_stmt*,
int);
3948 SQLITE_API
const void *SQLITE_STDCALL sqlite3_column_table_name16(sqlite3_stmt*,
int);
3949 SQLITE_API
const char *SQLITE_STDCALL sqlite3_column_origin_name(sqlite3_stmt*,
int);
3950 SQLITE_API
const void *SQLITE_STDCALL sqlite3_column_origin_name16(sqlite3_stmt*,
int);
3982 SQLITE_API
const char *SQLITE_STDCALL sqlite3_column_decltype(sqlite3_stmt*,
int);
3983 SQLITE_API
const void *SQLITE_STDCALL sqlite3_column_decltype16(sqlite3_stmt*,
int);
4063 SQLITE_API
int SQLITE_STDCALL sqlite3_step(sqlite3_stmt*);
4084 SQLITE_API
int SQLITE_STDCALL sqlite3_data_count(sqlite3_stmt *pStmt);
4107 #define SQLITE_INTEGER 1 4108 #define SQLITE_FLOAT 2 4109 #define SQLITE_BLOB 4 4110 #define SQLITE_NULL 5 4114 # define SQLITE_TEXT 3 4116 #define SQLITE3_TEXT 3 4274 SQLITE_API
const void *SQLITE_STDCALL sqlite3_column_blob(sqlite3_stmt*,
int iCol);
4275 SQLITE_API
int SQLITE_STDCALL sqlite3_column_bytes(sqlite3_stmt*,
int iCol);
4276 SQLITE_API
int SQLITE_STDCALL sqlite3_column_bytes16(sqlite3_stmt*,
int iCol);
4277 SQLITE_API
double SQLITE_STDCALL sqlite3_column_double(sqlite3_stmt*,
int iCol);
4278 SQLITE_API
int SQLITE_STDCALL sqlite3_column_int(sqlite3_stmt*,
int iCol);
4279 SQLITE_API sqlite3_int64 SQLITE_STDCALL sqlite3_column_int64(sqlite3_stmt*,
int iCol);
4280 SQLITE_API
const unsigned char *SQLITE_STDCALL sqlite3_column_text(sqlite3_stmt*,
int iCol);
4281 SQLITE_API
const void *SQLITE_STDCALL sqlite3_column_text16(sqlite3_stmt*,
int iCol);
4282 SQLITE_API
int SQLITE_STDCALL sqlite3_column_type(sqlite3_stmt*,
int iCol);
4283 SQLITE_API sqlite3_value *SQLITE_STDCALL sqlite3_column_value(sqlite3_stmt*,
int iCol);
4311 SQLITE_API
int SQLITE_STDCALL sqlite3_finalize(sqlite3_stmt *pStmt);
4338 SQLITE_API
int SQLITE_STDCALL sqlite3_reset(sqlite3_stmt *pStmt);
4438 SQLITE_API
int SQLITE_STDCALL sqlite3_create_function(
4440 const char *zFunctionName,
4444 void (*xFunc)(sqlite3_context*,
int,sqlite3_value**),
4445 void (*xStep)(sqlite3_context*,
int,sqlite3_value**),
4446 void (*xFinal)(sqlite3_context*)
4448 SQLITE_API
int SQLITE_STDCALL sqlite3_create_function16(
4450 const void *zFunctionName,
4454 void (*xFunc)(sqlite3_context*,
int,sqlite3_value**),
4455 void (*xStep)(sqlite3_context*,
int,sqlite3_value**),
4456 void (*xFinal)(sqlite3_context*)
4458 SQLITE_API
int SQLITE_STDCALL sqlite3_create_function_v2(
4460 const char *zFunctionName,
4464 void (*xFunc)(sqlite3_context*,
int,sqlite3_value**),
4465 void (*xStep)(sqlite3_context*,
int,sqlite3_value**),
4466 void (*xFinal)(sqlite3_context*),
4467 void(*xDestroy)(
void*)
4476 #define SQLITE_UTF8 1 4477 #define SQLITE_UTF16LE 2 4478 #define SQLITE_UTF16BE 3 4479 #define SQLITE_UTF16 4 4480 #define SQLITE_ANY 5 4481 #define SQLITE_UTF16_ALIGNED 8 4491 #define SQLITE_DETERMINISTIC 0x800 4503 #ifndef SQLITE_OMIT_DEPRECATED 4504 SQLITE_API SQLITE_DEPRECATED
int SQLITE_STDCALL sqlite3_aggregate_count(sqlite3_context*);
4505 SQLITE_API SQLITE_DEPRECATED
int SQLITE_STDCALL sqlite3_expired(sqlite3_stmt*);
4506 SQLITE_API SQLITE_DEPRECATED
int SQLITE_STDCALL sqlite3_transfer_bindings(sqlite3_stmt*, sqlite3_stmt*);
4507 SQLITE_API SQLITE_DEPRECATED
int SQLITE_STDCALL sqlite3_global_recover(
void);
4508 SQLITE_API SQLITE_DEPRECATED
void SQLITE_STDCALL sqlite3_thread_cleanup(
void);
4509 SQLITE_API SQLITE_DEPRECATED
int SQLITE_STDCALL sqlite3_memory_alarm(
void(*)(
void*,sqlite3_int64,
int),
4510 void*,sqlite3_int64);
4559 SQLITE_API
const void *SQLITE_STDCALL sqlite3_value_blob(sqlite3_value*);
4560 SQLITE_API
int SQLITE_STDCALL sqlite3_value_bytes(sqlite3_value*);
4561 SQLITE_API
int SQLITE_STDCALL sqlite3_value_bytes16(sqlite3_value*);
4562 SQLITE_API
double SQLITE_STDCALL sqlite3_value_double(sqlite3_value*);
4563 SQLITE_API
int SQLITE_STDCALL sqlite3_value_int(sqlite3_value*);
4564 SQLITE_API sqlite3_int64 SQLITE_STDCALL sqlite3_value_int64(sqlite3_value*);
4565 SQLITE_API
const unsigned char *SQLITE_STDCALL sqlite3_value_text(sqlite3_value*);
4566 SQLITE_API
const void *SQLITE_STDCALL sqlite3_value_text16(sqlite3_value*);
4567 SQLITE_API
const void *SQLITE_STDCALL sqlite3_value_text16le(sqlite3_value*);
4568 SQLITE_API
const void *SQLITE_STDCALL sqlite3_value_text16be(sqlite3_value*);
4569 SQLITE_API
int SQLITE_STDCALL sqlite3_value_type(sqlite3_value*);
4570 SQLITE_API
int SQLITE_STDCALL sqlite3_value_numeric_type(sqlite3_value*);
4586 SQLITE_API
unsigned int SQLITE_STDCALL sqlite3_value_subtype(sqlite3_value*);
4602 SQLITE_API sqlite3_value *SQLITE_STDCALL sqlite3_value_dup(
const sqlite3_value*);
4603 SQLITE_API
void SQLITE_STDCALL sqlite3_value_free(sqlite3_value*);
4648 SQLITE_API
void *SQLITE_STDCALL sqlite3_aggregate_context(sqlite3_context*,
int nBytes);
4663 SQLITE_API
void *SQLITE_STDCALL sqlite3_user_data(sqlite3_context*);
4675 SQLITE_API sqlite3 *SQLITE_STDCALL sqlite3_context_db_handle(sqlite3_context*);
4729 SQLITE_API
void *SQLITE_STDCALL sqlite3_get_auxdata(sqlite3_context*,
int N);
4730 SQLITE_API
void SQLITE_STDCALL sqlite3_set_auxdata(sqlite3_context*,
int N,
void*,
void (*)(
void*));
4747 typedef void (*sqlite3_destructor_type)(
void*);
4748 #define SQLITE_STATIC ((sqlite3_destructor_type)0) 4749 #define SQLITE_TRANSIENT ((sqlite3_destructor_type)-1) 4866 SQLITE_API
void SQLITE_STDCALL sqlite3_result_blob(sqlite3_context*,
const void*,
int,
void(*)(
void*));
4867 SQLITE_API
void SQLITE_STDCALL sqlite3_result_blob64(sqlite3_context*,
const void*,
4868 sqlite3_uint64,
void(*)(
void*));
4869 SQLITE_API
void SQLITE_STDCALL sqlite3_result_double(sqlite3_context*,
double);
4870 SQLITE_API
void SQLITE_STDCALL sqlite3_result_error(sqlite3_context*,
const char*,
int);
4871 SQLITE_API
void SQLITE_STDCALL sqlite3_result_error16(sqlite3_context*,
const void*,
int);
4872 SQLITE_API
void SQLITE_STDCALL sqlite3_result_error_toobig(sqlite3_context*);
4873 SQLITE_API
void SQLITE_STDCALL sqlite3_result_error_nomem(sqlite3_context*);
4874 SQLITE_API
void SQLITE_STDCALL sqlite3_result_error_code(sqlite3_context*,
int);
4875 SQLITE_API
void SQLITE_STDCALL sqlite3_result_int(sqlite3_context*,
int);
4876 SQLITE_API
void SQLITE_STDCALL sqlite3_result_int64(sqlite3_context*, sqlite3_int64);
4877 SQLITE_API
void SQLITE_STDCALL sqlite3_result_null(sqlite3_context*);
4878 SQLITE_API
void SQLITE_STDCALL sqlite3_result_text(sqlite3_context*,
const char*,
int,
void(*)(
void*));
4879 SQLITE_API
void SQLITE_STDCALL sqlite3_result_text64(sqlite3_context*,
const char*,sqlite3_uint64,
4880 void(*)(
void*),
unsigned char encoding);
4881 SQLITE_API
void SQLITE_STDCALL sqlite3_result_text16(sqlite3_context*,
const void*,
int,
void(*)(
void*));
4882 SQLITE_API
void SQLITE_STDCALL sqlite3_result_text16le(sqlite3_context*,
const void*,
int,
void(*)(
void*));
4883 SQLITE_API
void SQLITE_STDCALL sqlite3_result_text16be(sqlite3_context*,
const void*,
int,
void(*)(
void*));
4884 SQLITE_API
void SQLITE_STDCALL sqlite3_result_value(sqlite3_context*, sqlite3_value*);
4885 SQLITE_API
void SQLITE_STDCALL sqlite3_result_zeroblob(sqlite3_context*,
int n);
4886 SQLITE_API
int SQLITE_STDCALL sqlite3_result_zeroblob64(sqlite3_context*, sqlite3_uint64 n);
4901 SQLITE_API
void SQLITE_STDCALL sqlite3_result_subtype(sqlite3_context*,
unsigned int);
4983 SQLITE_API
int SQLITE_STDCALL sqlite3_create_collation(
4988 int(*xCompare)(
void*,
int,
const void*,
int,
const void*)
4990 SQLITE_API
int SQLITE_STDCALL sqlite3_create_collation_v2(
4995 int(*xCompare)(
void*,
int,
const void*,
int,
const void*),
4996 void(*xDestroy)(
void*)
4998 SQLITE_API
int SQLITE_STDCALL sqlite3_create_collation16(
5003 int(*xCompare)(
void*,
int,
const void*,
int,
const void*)
5033 SQLITE_API
int SQLITE_STDCALL sqlite3_collation_needed(
5036 void(*)(
void*,sqlite3*,
int eTextRep,
const char*)
5038 SQLITE_API
int SQLITE_STDCALL sqlite3_collation_needed16(
5041 void(*)(
void*,sqlite3*,
int eTextRep,
const void*)
5044 #ifdef SQLITE_HAS_CODEC 5052 SQLITE_API
int SQLITE_STDCALL sqlite3_key(
5054 const void *pKey,
int nKey
5056 SQLITE_API
int SQLITE_STDCALL sqlite3_key_v2(
5058 const char *zDbName,
5059 const void *pKey,
int nKey
5070 SQLITE_API
int SQLITE_STDCALL sqlite3_rekey(
5072 const void *pKey,
int nKey
5074 SQLITE_API
int SQLITE_STDCALL sqlite3_rekey_v2(
5076 const char *zDbName,
5077 const void *pKey,
int nKey
5084 SQLITE_API
void SQLITE_STDCALL sqlite3_activate_see(
5085 const char *zPassPhrase
5089 #ifdef SQLITE_ENABLE_CEROD 5094 SQLITE_API
void SQLITE_STDCALL sqlite3_activate_cerod(
5095 const char *zPassPhrase
5116 SQLITE_API
int SQLITE_STDCALL sqlite3_sleep(
int);
5174 SQLITE_API SQLITE_EXTERN
char *sqlite3_temp_directory;
5211 SQLITE_API SQLITE_EXTERN
char *sqlite3_data_directory;
5235 SQLITE_API
int SQLITE_STDCALL sqlite3_get_autocommit(sqlite3*);
5248 SQLITE_API sqlite3 *SQLITE_STDCALL sqlite3_db_handle(sqlite3_stmt*);
5265 SQLITE_API
const char *SQLITE_STDCALL sqlite3_db_filename(sqlite3 *db,
const char *zDbName);
5275 SQLITE_API
int SQLITE_STDCALL sqlite3_db_readonly(sqlite3 *db,
const char *zDbName);
5291 SQLITE_API sqlite3_stmt *SQLITE_STDCALL sqlite3_next_stmt(sqlite3 *pDb, sqlite3_stmt *pStmt);
5340 SQLITE_API
void *SQLITE_STDCALL sqlite3_commit_hook(sqlite3*,
int(*)(
void*),
void*);
5341 SQLITE_API
void *SQLITE_STDCALL sqlite3_rollback_hook(sqlite3*,
void(*)(
void *),
void*);
5392 SQLITE_API
void *SQLITE_STDCALL sqlite3_update_hook(
5394 void(*)(
void *,
int ,
char const *,
char const *,sqlite3_int64),
5432 SQLITE_API
int SQLITE_STDCALL sqlite3_enable_shared_cache(
int);
5448 SQLITE_API
int SQLITE_STDCALL sqlite3_release_memory(
int);
5462 SQLITE_API
int SQLITE_STDCALL sqlite3_db_release_memory(sqlite3*);
5514 SQLITE_API sqlite3_int64 SQLITE_STDCALL sqlite3_soft_heap_limit64(sqlite3_int64 N);
5525 SQLITE_API SQLITE_DEPRECATED
void SQLITE_STDCALL sqlite3_soft_heap_limit(
int N);
5595 SQLITE_API
int SQLITE_STDCALL sqlite3_table_column_metadata(
5597 const char *zDbName,
5598 const char *zTableName,
5599 const char *zColumnName,
5600 char const **pzDataType,
5601 char const **pzCollSeq,
5651 SQLITE_API
int SQLITE_STDCALL sqlite3_load_extension(
5683 SQLITE_API
int SQLITE_STDCALL sqlite3_enable_load_extension(sqlite3 *db,
int onoff);
5721 SQLITE_API
int SQLITE_STDCALL sqlite3_auto_extension(
void(*xEntryPoint)(
void));
5733 SQLITE_API
int SQLITE_STDCALL sqlite3_cancel_auto_extension(
void(*xEntryPoint)(
void));
5741 SQLITE_API
void SQLITE_STDCALL sqlite3_reset_auto_extension(
void);
5755 typedef struct sqlite3_vtab sqlite3_vtab;
5756 typedef struct sqlite3_index_info sqlite3_index_info;
5757 typedef struct sqlite3_vtab_cursor sqlite3_vtab_cursor;
5758 typedef struct sqlite3_module sqlite3_module;
5776 struct sqlite3_module {
5778 int (*xCreate)(sqlite3*,
void *pAux,
5779 int argc,
const char *
const*argv,
5780 sqlite3_vtab **ppVTab,
char**);
5781 int (*xConnect)(sqlite3*,
void *pAux,
5782 int argc,
const char *
const*argv,
5783 sqlite3_vtab **ppVTab,
char**);
5784 int (*xBestIndex)(sqlite3_vtab *pVTab, sqlite3_index_info*);
5785 int (*xDisconnect)(sqlite3_vtab *pVTab);
5786 int (*xDestroy)(sqlite3_vtab *pVTab);
5787 int (*xOpen)(sqlite3_vtab *pVTab, sqlite3_vtab_cursor **ppCursor);
5788 int (*xClose)(sqlite3_vtab_cursor*);
5789 int (*xFilter)(sqlite3_vtab_cursor*,
int idxNum,
const char *idxStr,
5790 int argc, sqlite3_value **argv);
5791 int (*xNext)(sqlite3_vtab_cursor*);
5792 int (*xEof)(sqlite3_vtab_cursor*);
5793 int (*xColumn)(sqlite3_vtab_cursor*, sqlite3_context*, int);
5794 int (*xRowid)(sqlite3_vtab_cursor*, sqlite3_int64 *pRowid);
5795 int (*xUpdate)(sqlite3_vtab *, int, sqlite3_value **, sqlite3_int64 *);
5796 int (*xBegin)(sqlite3_vtab *pVTab);
5797 int (*xSync)(sqlite3_vtab *pVTab);
5798 int (*xCommit)(sqlite3_vtab *pVTab);
5799 int (*xRollback)(sqlite3_vtab *pVTab);
5800 int (*xFindFunction)(sqlite3_vtab *pVtab,
int nArg,
const char *zName,
5801 void (**pxFunc)(sqlite3_context*,int,sqlite3_value**),
5803 int (*xRename)(sqlite3_vtab *pVtab,
const char *zNew);
5806 int (*xSavepoint)(sqlite3_vtab *pVTab, int);
5807 int (*xRelease)(sqlite3_vtab *pVTab, int);
5808 int (*xRollbackTo)(sqlite3_vtab *pVTab, int);
5905 struct sqlite3_index_info {
5908 struct sqlite3_index_constraint {
5911 unsigned char usable;
5915 struct sqlite3_index_orderby {
5920 struct sqlite3_index_constraint_usage {
5923 } *aConstraintUsage;
5926 int needToFreeIdxStr;
5927 int orderByConsumed;
5928 double estimatedCost;
5930 sqlite3_int64 estimatedRows;
5934 sqlite3_uint64 colUsed;
5940 #define SQLITE_INDEX_SCAN_UNIQUE 1 5950 #define SQLITE_INDEX_CONSTRAINT_EQ 2 5951 #define SQLITE_INDEX_CONSTRAINT_GT 4 5952 #define SQLITE_INDEX_CONSTRAINT_LE 8 5953 #define SQLITE_INDEX_CONSTRAINT_LT 16 5954 #define SQLITE_INDEX_CONSTRAINT_GE 32 5955 #define SQLITE_INDEX_CONSTRAINT_MATCH 64 5956 #define SQLITE_INDEX_CONSTRAINT_LIKE 65 5957 #define SQLITE_INDEX_CONSTRAINT_GLOB 66 5958 #define SQLITE_INDEX_CONSTRAINT_REGEXP 67 5986 SQLITE_API
int SQLITE_STDCALL sqlite3_create_module(
5989 const sqlite3_module *p,
5992 SQLITE_API
int SQLITE_STDCALL sqlite3_create_module_v2(
5995 const sqlite3_module *p,
5997 void(*xDestroy)(
void*)
6018 struct sqlite3_vtab {
6019 const sqlite3_module *pModule;
6042 struct sqlite3_vtab_cursor {
6043 sqlite3_vtab *pVtab;
6055 SQLITE_API
int SQLITE_STDCALL sqlite3_declare_vtab(sqlite3*,
const char *zSQL);
6074 SQLITE_API
int SQLITE_STDCALL sqlite3_overload_function(sqlite3*,
const char *zFuncName,
int nArg);
6098 typedef struct sqlite3_blob sqlite3_blob;
6173 SQLITE_API
int SQLITE_STDCALL sqlite3_blob_open(
6177 const char *zColumn,
6180 sqlite3_blob **ppBlob
6206 SQLITE_API
int SQLITE_STDCALL sqlite3_blob_reopen(sqlite3_blob *, sqlite3_int64);
6229 SQLITE_API
int SQLITE_STDCALL sqlite3_blob_close(sqlite3_blob *);
6245 SQLITE_API
int SQLITE_STDCALL sqlite3_blob_bytes(sqlite3_blob *);
6274 SQLITE_API
int SQLITE_STDCALL sqlite3_blob_read(sqlite3_blob *,
void *Z,
int N,
int iOffset);
6316 SQLITE_API
int SQLITE_STDCALL sqlite3_blob_write(sqlite3_blob *,
const void *z,
int n,
int iOffset);
6347 SQLITE_API sqlite3_vfs *SQLITE_STDCALL sqlite3_vfs_find(
const char *zVfsName);
6348 SQLITE_API
int SQLITE_STDCALL sqlite3_vfs_register(sqlite3_vfs*,
int makeDflt);
6349 SQLITE_API
int SQLITE_STDCALL sqlite3_vfs_unregister(sqlite3_vfs*);
6465 SQLITE_API sqlite3_mutex *SQLITE_STDCALL sqlite3_mutex_alloc(
int);
6466 SQLITE_API
void SQLITE_STDCALL sqlite3_mutex_free(sqlite3_mutex*);
6467 SQLITE_API
void SQLITE_STDCALL sqlite3_mutex_enter(sqlite3_mutex*);
6468 SQLITE_API
int SQLITE_STDCALL sqlite3_mutex_try(sqlite3_mutex*);
6469 SQLITE_API
void SQLITE_STDCALL sqlite3_mutex_leave(sqlite3_mutex*);
6536 typedef struct sqlite3_mutex_methods sqlite3_mutex_methods;
6537 struct sqlite3_mutex_methods {
6538 int (*xMutexInit)(void);
6539 int (*xMutexEnd)(void);
6540 sqlite3_mutex *(*xMutexAlloc)(int);
6541 void (*xMutexFree)(sqlite3_mutex *);
6542 void (*xMutexEnter)(sqlite3_mutex *);
6543 int (*xMutexTry)(sqlite3_mutex *);
6544 void (*xMutexLeave)(sqlite3_mutex *);
6545 int (*xMutexHeld)(sqlite3_mutex *);
6546 int (*xMutexNotheld)(sqlite3_mutex *);
6579 SQLITE_API
int SQLITE_STDCALL sqlite3_mutex_held(sqlite3_mutex*);
6580 SQLITE_API
int SQLITE_STDCALL sqlite3_mutex_notheld(sqlite3_mutex*);
6593 #define SQLITE_MUTEX_FAST 0 6594 #define SQLITE_MUTEX_RECURSIVE 1 6595 #define SQLITE_MUTEX_STATIC_MASTER 2 6596 #define SQLITE_MUTEX_STATIC_MEM 3 6597 #define SQLITE_MUTEX_STATIC_MEM2 4 6598 #define SQLITE_MUTEX_STATIC_OPEN 4 6599 #define SQLITE_MUTEX_STATIC_PRNG 5 6600 #define SQLITE_MUTEX_STATIC_LRU 6 6601 #define SQLITE_MUTEX_STATIC_LRU2 7 6602 #define SQLITE_MUTEX_STATIC_PMEM 7 6603 #define SQLITE_MUTEX_STATIC_APP1 8 6604 #define SQLITE_MUTEX_STATIC_APP2 9 6605 #define SQLITE_MUTEX_STATIC_APP3 10 6606 #define SQLITE_MUTEX_STATIC_VFS1 11 6607 #define SQLITE_MUTEX_STATIC_VFS2 12 6608 #define SQLITE_MUTEX_STATIC_VFS3 13 6620 SQLITE_API sqlite3_mutex *SQLITE_STDCALL sqlite3_db_mutex(sqlite3*);
6655 SQLITE_API
int SQLITE_STDCALL sqlite3_file_control(sqlite3*,
const char *zDbName,
int op,
void*);
6674 SQLITE_API
int SQLITE_CDECL sqlite3_test_control(
int op, ...);
6687 #define SQLITE_TESTCTRL_FIRST 5 6688 #define SQLITE_TESTCTRL_PRNG_SAVE 5 6689 #define SQLITE_TESTCTRL_PRNG_RESTORE 6 6690 #define SQLITE_TESTCTRL_PRNG_RESET 7 6691 #define SQLITE_TESTCTRL_BITVEC_TEST 8 6692 #define SQLITE_TESTCTRL_FAULT_INSTALL 9 6693 #define SQLITE_TESTCTRL_BENIGN_MALLOC_HOOKS 10 6694 #define SQLITE_TESTCTRL_PENDING_BYTE 11 6695 #define SQLITE_TESTCTRL_ASSERT 12 6696 #define SQLITE_TESTCTRL_ALWAYS 13 6697 #define SQLITE_TESTCTRL_RESERVE 14 6698 #define SQLITE_TESTCTRL_OPTIMIZATIONS 15 6699 #define SQLITE_TESTCTRL_ISKEYWORD 16 6700 #define SQLITE_TESTCTRL_SCRATCHMALLOC 17 6701 #define SQLITE_TESTCTRL_LOCALTIME_FAULT 18 6702 #define SQLITE_TESTCTRL_EXPLAIN_STMT 19 6703 #define SQLITE_TESTCTRL_NEVER_CORRUPT 20 6704 #define SQLITE_TESTCTRL_VDBE_COVERAGE 21 6705 #define SQLITE_TESTCTRL_BYTEORDER 22 6706 #define SQLITE_TESTCTRL_ISINIT 23 6707 #define SQLITE_TESTCTRL_SORTER_MMAP 24 6708 #define SQLITE_TESTCTRL_IMPOSTER 25 6709 #define SQLITE_TESTCTRL_LAST 25 6737 SQLITE_API
int SQLITE_STDCALL sqlite3_status(
int op,
int *pCurrent,
int *pHighwater,
int resetFlag);
6738 SQLITE_API
int SQLITE_STDCALL sqlite3_status64(
6740 sqlite3_int64 *pCurrent,
6741 sqlite3_int64 *pHighwater,
6829 #define SQLITE_STATUS_MEMORY_USED 0 6830 #define SQLITE_STATUS_PAGECACHE_USED 1 6831 #define SQLITE_STATUS_PAGECACHE_OVERFLOW 2 6832 #define SQLITE_STATUS_SCRATCH_USED 3 6833 #define SQLITE_STATUS_SCRATCH_OVERFLOW 4 6834 #define SQLITE_STATUS_MALLOC_SIZE 5 6835 #define SQLITE_STATUS_PARSER_STACK 6 6836 #define SQLITE_STATUS_PAGECACHE_SIZE 7 6837 #define SQLITE_STATUS_SCRATCH_SIZE 8 6838 #define SQLITE_STATUS_MALLOC_COUNT 9 6863 SQLITE_API
int SQLITE_STDCALL sqlite3_db_status(sqlite3*,
int op,
int *pCur,
int *pHiwtr,
int resetFlg);
6967 #define SQLITE_DBSTATUS_LOOKASIDE_USED 0 6968 #define SQLITE_DBSTATUS_CACHE_USED 1 6969 #define SQLITE_DBSTATUS_SCHEMA_USED 2 6970 #define SQLITE_DBSTATUS_STMT_USED 3 6971 #define SQLITE_DBSTATUS_LOOKASIDE_HIT 4 6972 #define SQLITE_DBSTATUS_LOOKASIDE_MISS_SIZE 5 6973 #define SQLITE_DBSTATUS_LOOKASIDE_MISS_FULL 6 6974 #define SQLITE_DBSTATUS_CACHE_HIT 7 6975 #define SQLITE_DBSTATUS_CACHE_MISS 8 6976 #define SQLITE_DBSTATUS_CACHE_WRITE 9 6977 #define SQLITE_DBSTATUS_DEFERRED_FKS 10 6978 #define SQLITE_DBSTATUS_CACHE_USED_SHARED 11 6979 #define SQLITE_DBSTATUS_MAX 11 7006 SQLITE_API
int SQLITE_STDCALL sqlite3_stmt_status(sqlite3_stmt*,
int op,
int resetFlg);
7045 #define SQLITE_STMTSTATUS_FULLSCAN_STEP 1 7046 #define SQLITE_STMTSTATUS_SORT 2 7047 #define SQLITE_STMTSTATUS_AUTOINDEX 3 7048 #define SQLITE_STMTSTATUS_VM_STEP 4 7061 typedef struct sqlite3_pcache sqlite3_pcache;
7073 typedef struct sqlite3_pcache_page sqlite3_pcache_page;
7074 struct sqlite3_pcache_page {
7238 typedef struct sqlite3_pcache_methods2 sqlite3_pcache_methods2;
7239 struct sqlite3_pcache_methods2 {
7242 int (*xInit)(
void*);
7243 void (*xShutdown)(
void*);
7244 sqlite3_pcache *(*xCreate)(
int szPage,
int szExtra,
int bPurgeable);
7245 void (*xCachesize)(sqlite3_pcache*,
int nCachesize);
7246 int (*xPagecount)(sqlite3_pcache*);
7247 sqlite3_pcache_page *(*xFetch)(sqlite3_pcache*,
unsigned key,
int createFlag);
7248 void (*xUnpin)(sqlite3_pcache*, sqlite3_pcache_page*,
int discard);
7249 void (*xRekey)(sqlite3_pcache*, sqlite3_pcache_page*,
7250 unsigned oldKey,
unsigned newKey);
7251 void (*xTruncate)(sqlite3_pcache*,
unsigned iLimit);
7252 void (*xDestroy)(sqlite3_pcache*);
7253 void (*xShrink)(sqlite3_pcache*);
7261 typedef struct sqlite3_pcache_methods sqlite3_pcache_methods;
7262 struct sqlite3_pcache_methods {
7264 int (*xInit)(
void*);
7265 void (*xShutdown)(
void*);
7266 sqlite3_pcache *(*xCreate)(
int szPage,
int bPurgeable);
7267 void (*xCachesize)(sqlite3_pcache*,
int nCachesize);
7268 int (*xPagecount)(sqlite3_pcache*);
7269 void *(*xFetch)(sqlite3_pcache*,
unsigned key,
int createFlag);
7270 void (*xUnpin)(sqlite3_pcache*,
void*,
int discard);
7271 void (*xRekey)(sqlite3_pcache*,
void*,
unsigned oldKey,
unsigned newKey);
7272 void (*xTruncate)(sqlite3_pcache*,
unsigned iLimit);
7273 void (*xDestroy)(sqlite3_pcache*);
7287 typedef struct sqlite3_backup sqlite3_backup;
7475 SQLITE_API sqlite3_backup *SQLITE_STDCALL sqlite3_backup_init(
7477 const char *zDestName,
7479 const char *zSourceName
7481 SQLITE_API
int SQLITE_STDCALL sqlite3_backup_step(sqlite3_backup *p,
int nPage);
7482 SQLITE_API
int SQLITE_STDCALL sqlite3_backup_finish(sqlite3_backup *p);
7483 SQLITE_API
int SQLITE_STDCALL sqlite3_backup_remaining(sqlite3_backup *p);
7484 SQLITE_API
int SQLITE_STDCALL sqlite3_backup_pagecount(sqlite3_backup *p);
7601 SQLITE_API
int SQLITE_STDCALL sqlite3_unlock_notify(
7603 void (*xNotify)(
void **apArg,
int nArg),
7616 SQLITE_API
int SQLITE_STDCALL sqlite3_stricmp(
const char *,
const char *);
7617 SQLITE_API
int SQLITE_STDCALL sqlite3_strnicmp(
const char *,
const char *,
int);
7634 SQLITE_API
int SQLITE_STDCALL sqlite3_strglob(
const char *zGlob,
const char *zStr);
7657 SQLITE_API
int SQLITE_STDCALL sqlite3_strlike(
const char *zGlob,
const char *zStr,
unsigned int cEsc);
7680 SQLITE_API
void SQLITE_CDECL sqlite3_log(
int iErrCode,
const char *zFormat, ...);
7716 SQLITE_API
void *SQLITE_STDCALL sqlite3_wal_hook(
7718 int(*)(
void *,sqlite3*,
const char*,
int),
7751 SQLITE_API
int SQLITE_STDCALL sqlite3_wal_autocheckpoint(sqlite3 *db,
int N);
7773 SQLITE_API
int SQLITE_STDCALL sqlite3_wal_checkpoint(sqlite3 *db,
const char *zDb);
7867 SQLITE_API
int SQLITE_STDCALL sqlite3_wal_checkpoint_v2(
7884 #define SQLITE_CHECKPOINT_PASSIVE 0 7885 #define SQLITE_CHECKPOINT_FULL 1 7886 #define SQLITE_CHECKPOINT_RESTART 2 7887 #define SQLITE_CHECKPOINT_TRUNCATE 3 7903 SQLITE_API
int SQLITE_CDECL sqlite3_vtab_config(sqlite3*,
int op, ...);
7944 #define SQLITE_VTAB_CONSTRAINT_SUPPORT 1 7956 SQLITE_API
int SQLITE_STDCALL sqlite3_vtab_on_conflict(sqlite3 *);
7970 #define SQLITE_ROLLBACK 1 7972 #define SQLITE_FAIL 3 7974 #define SQLITE_REPLACE 5 8023 #define SQLITE_SCANSTAT_NLOOP 0 8024 #define SQLITE_SCANSTAT_NVISIT 1 8025 #define SQLITE_SCANSTAT_EST 2 8026 #define SQLITE_SCANSTAT_NAME 3 8027 #define SQLITE_SCANSTAT_EXPLAIN 4 8028 #define SQLITE_SCANSTAT_SELECTID 5 8061 SQLITE_API
int SQLITE_STDCALL sqlite3_stmt_scanstatus(
8062 sqlite3_stmt *pStmt,
8077 SQLITE_API
void SQLITE_STDCALL sqlite3_stmt_scanstatus_reset(sqlite3_stmt*);
8109 SQLITE_API
int SQLITE_STDCALL sqlite3_db_cacheflush(sqlite3*);
8189 SQLITE_API SQLITE_EXPERIMENTAL
void *SQLITE_STDCALL sqlite3_preupdate_hook(
8197 sqlite3_int64 iKey1,
8202 SQLITE_API SQLITE_EXPERIMENTAL
int SQLITE_STDCALL sqlite3_preupdate_old(sqlite3 *,
int, sqlite3_value **);
8203 SQLITE_API SQLITE_EXPERIMENTAL
int SQLITE_STDCALL sqlite3_preupdate_count(sqlite3 *);
8204 SQLITE_API SQLITE_EXPERIMENTAL
int SQLITE_STDCALL sqlite3_preupdate_depth(sqlite3 *);
8205 SQLITE_API SQLITE_EXPERIMENTAL
int SQLITE_STDCALL sqlite3_preupdate_new(sqlite3 *,
int, sqlite3_value **);
8217 SQLITE_API
int SQLITE_STDCALL sqlite3_system_errno(sqlite3*);
8245 typedef struct sqlite3_snapshot sqlite3_snapshot;
8267 SQLITE_API SQLITE_EXPERIMENTAL
int SQLITE_STDCALL sqlite3_snapshot_get(
8269 const char *zSchema,
8270 sqlite3_snapshot **ppSnapshot
8305 SQLITE_API SQLITE_EXPERIMENTAL
int SQLITE_STDCALL sqlite3_snapshot_open(
8307 const char *zSchema,
8308 sqlite3_snapshot *pSnapshot
8322 SQLITE_API SQLITE_EXPERIMENTAL
void SQLITE_STDCALL sqlite3_snapshot_free(sqlite3_snapshot*);
8346 SQLITE_API SQLITE_EXPERIMENTAL
int SQLITE_STDCALL sqlite3_snapshot_cmp(
8347 sqlite3_snapshot *p1,
8348 sqlite3_snapshot *p2
8355 #ifdef SQLITE_OMIT_FLOATING_POINT 8378 #ifndef _SQLITE3RTREE_H_ 8379 #define _SQLITE3RTREE_H_ 8386 typedef struct sqlite3_rtree_geometry sqlite3_rtree_geometry;
8387 typedef struct sqlite3_rtree_query_info sqlite3_rtree_query_info;
8392 #ifdef SQLITE_RTREE_INT_ONLY 8393 typedef sqlite3_int64 sqlite3_rtree_dbl;
8395 typedef double sqlite3_rtree_dbl;
8404 SQLITE_API
int SQLITE_STDCALL sqlite3_rtree_geometry_callback(
8407 int (*xGeom)(sqlite3_rtree_geometry*,
int, sqlite3_rtree_dbl*,
int*),
8416 struct sqlite3_rtree_geometry {
8419 sqlite3_rtree_dbl *aParam;
8421 void (*xDelUser)(
void *);
8430 SQLITE_API
int SQLITE_STDCALL sqlite3_rtree_query_callback(
8432 const char *zQueryFunc,
8433 int (*xQueryFunc)(sqlite3_rtree_query_info*),
8435 void (*xDestructor)(
void*)
8448 struct sqlite3_rtree_query_info {
8451 sqlite3_rtree_dbl *aParam;
8453 void (*xDelUser)(
void*);
8454 sqlite3_rtree_dbl *aCoord;
8455 unsigned int *anQueue;
8459 sqlite3_int64 iRowid;
8460 sqlite3_rtree_dbl rParentScore;
8463 sqlite3_rtree_dbl rScore;
8465 sqlite3_value **apSqlParam;
8471 #define NOT_WITHIN 0 8472 #define PARTLY_WITHIN 1 8473 #define FULLY_WITHIN 2 8485 #if !defined(__SQLITESESSION_H_) && defined(SQLITE_ENABLE_SESSION) 8486 #define __SQLITESESSION_H_ 1 8499 typedef struct sqlite3_session sqlite3_session;
8504 typedef struct sqlite3_changeset_iter sqlite3_changeset_iter;
8536 int sqlite3session_create(
8539 sqlite3_session **ppSession
8554 void sqlite3session_delete(sqlite3_session *pSession);
8574 int sqlite3session_enable(sqlite3_session *pSession,
int bEnable);
8603 int sqlite3session_indirect(sqlite3_session *pSession,
int bIndirect);
8633 int sqlite3session_attach(
8634 sqlite3_session *pSession,
8647 void sqlite3session_table_filter(
8648 sqlite3_session *pSession,
8760 int sqlite3session_changeset(
8761 sqlite3_session *pSession,
8821 int sqlite3session_diff(
8822 sqlite3_session *pSession,
8823 const char *zFromDb,
8857 int sqlite3session_patchset(
8858 sqlite3_session *pSession,
8878 int sqlite3session_isempty(sqlite3_session *pSession);
8913 int sqlite3changeset_start(
8914 sqlite3_changeset_iter **pp,
8942 int sqlite3changeset_next(sqlite3_changeset_iter *pIter);
8970 int sqlite3changeset_op(
8971 sqlite3_changeset_iter *pIter,
9003 int sqlite3changeset_pk(
9004 sqlite3_changeset_iter *pIter,
9005 unsigned char **pabPK,
9033 int sqlite3changeset_old(
9034 sqlite3_changeset_iter *pIter,
9036 sqlite3_value **ppValue
9066 int sqlite3changeset_new(
9067 sqlite3_changeset_iter *pIter,
9069 sqlite3_value **ppValue
9093 int sqlite3changeset_conflict(
9094 sqlite3_changeset_iter *pIter,
9096 sqlite3_value **ppValue
9109 int sqlite3changeset_fk_conflicts(
9110 sqlite3_changeset_iter *pIter,
9142 int sqlite3changeset_finalize(sqlite3_changeset_iter *pIter);
9172 int sqlite3changeset_invert(
9173 int nIn,
const void *pIn,
9174 int *pnOut,
void **ppOut
9201 int sqlite3changeset_concat(
9214 typedef struct sqlite3_changegroup sqlite3_changegroup;
9251 int sqlite3changegroup_new(sqlite3_changegroup **pp);
9326 int sqlite3changegroup_add(sqlite3_changegroup*,
int nData,
void *pData);
9350 int sqlite3changegroup_output(
9351 sqlite3_changegroup*,
9359 void sqlite3changegroup_delete(sqlite3_changegroup*);
9497 int sqlite3changeset_apply(
9508 sqlite3_changeset_iter *p
9568 #define SQLITE_CHANGESET_DATA 1 9569 #define SQLITE_CHANGESET_NOTFOUND 2 9570 #define SQLITE_CHANGESET_CONFLICT 3 9571 #define SQLITE_CHANGESET_CONSTRAINT 4 9572 #define SQLITE_CHANGESET_FOREIGN_KEY 5 9605 #define SQLITE_CHANGESET_OMIT 0 9606 #define SQLITE_CHANGESET_REPLACE 1 9607 #define SQLITE_CHANGESET_ABORT 2 9698 int sqlite3changeset_apply_strm(
9700 int (*xInput)(
void *pIn,
void *pData,
int *pnData),
9709 sqlite3_changeset_iter *p
9713 int sqlite3changeset_concat_strm(
9714 int (*xInputA)(
void *pIn,
void *pData,
int *pnData),
9716 int (*xInputB)(
void *pIn,
void *pData,
int *pnData),
9718 int (*xOutput)(
void *pOut,
const void *pData,
int nData),
9721 int sqlite3changeset_invert_strm(
9722 int (*xInput)(
void *pIn,
void *pData,
int *pnData),
9724 int (*xOutput)(
void *pOut,
const void *pData,
int nData),
9727 int sqlite3changeset_start_strm(
9728 sqlite3_changeset_iter **pp,
9729 int (*xInput)(
void *pIn,
void *pData,
int *pnData),
9732 int sqlite3session_changeset_strm(
9733 sqlite3_session *pSession,
9734 int (*xOutput)(
void *pOut,
const void *pData,
int nData),
9737 int sqlite3session_patchset_strm(
9738 sqlite3_session *pSession,
9739 int (*xOutput)(
void *pOut,
const void *pData,
int nData),
9742 int sqlite3changegroup_add_strm(sqlite3_changegroup*,
9743 int (*xInput)(
void *pIn,
void *pData,
int *pnData),
9746 int sqlite3changegroup_output_strm(sqlite3_changegroup*,
9747 int (*xOutput)(
void *pOut,
const void *pData,
int nData),
9798 typedef struct Fts5ExtensionApi Fts5ExtensionApi;
9799 typedef struct Fts5Context Fts5Context;
9800 typedef struct Fts5PhraseIter Fts5PhraseIter;
9802 typedef void (*fts5_extension_function)(
9803 const Fts5ExtensionApi *pApi,
9805 sqlite3_context *pCtx,
9807 sqlite3_value **apVal
9810 struct Fts5PhraseIter {
9811 const unsigned char *a;
9812 const unsigned char *b;
10030 struct Fts5ExtensionApi {
10033 void *(*xUserData)(Fts5Context*);
10035 int (*xColumnCount)(Fts5Context*);
10036 int (*xRowCount)(Fts5Context*, sqlite3_int64 *pnRow);
10037 int (*xColumnTotalSize)(Fts5Context*,
int iCol, sqlite3_int64 *pnToken);
10039 int (*xTokenize)(Fts5Context*,
10040 const char *pText,
int nText,
10042 int (*xToken)(
void*, int,
const char*, int, int, int)
10045 int (*xPhraseCount)(Fts5Context*);
10046 int (*xPhraseSize)(Fts5Context*,
int iPhrase);
10048 int (*xInstCount)(Fts5Context*,
int *pnInst);
10049 int (*xInst)(Fts5Context*,
int iIdx,
int *piPhrase,
int *piCol,
int *piOff);
10051 sqlite3_int64 (*xRowid)(Fts5Context*);
10052 int (*xColumnText)(Fts5Context*,
int iCol,
const char **pz,
int *pn);
10053 int (*xColumnSize)(Fts5Context*,
int iCol,
int *pnToken);
10055 int (*xQueryPhrase)(Fts5Context*,
int iPhrase,
void *pUserData,
10056 int(*)(
const Fts5ExtensionApi*,Fts5Context*,
void*)
10058 int (*xSetAuxdata)(Fts5Context*,
void *pAux, void(*xDelete)(
void*));
10059 void *(*xGetAuxdata)(Fts5Context*,
int bClear);
10061 int (*xPhraseFirst)(Fts5Context*,
int iPhrase, Fts5PhraseIter*,
int*,
int*);
10062 void (*xPhraseNext)(Fts5Context*, Fts5PhraseIter*,
int *piCol,
int *piOff);
10064 int (*xPhraseFirstColumn)(Fts5Context*,
int iPhrase, Fts5PhraseIter*,
int*);
10065 void (*xPhraseNextColumn)(Fts5Context*, Fts5PhraseIter*,
int *piCol);
10264 typedef struct Fts5Tokenizer Fts5Tokenizer;
10265 typedef struct fts5_tokenizer fts5_tokenizer;
10266 struct fts5_tokenizer {
10267 int (*xCreate)(
void*,
const char **azArg,
int nArg, Fts5Tokenizer **ppOut);
10268 void (*xDelete)(Fts5Tokenizer*);
10269 int (*xTokenize)(Fts5Tokenizer*,
10272 const char *pText,
int nText,
10276 const char *pToken,
10285 #define FTS5_TOKENIZE_QUERY 0x0001 10286 #define FTS5_TOKENIZE_PREFIX 0x0002 10287 #define FTS5_TOKENIZE_DOCUMENT 0x0004 10288 #define FTS5_TOKENIZE_AUX 0x0008 10292 #define FTS5_TOKEN_COLOCATED 0x0001 10301 typedef struct fts5_api fts5_api;
10306 int (*xCreateTokenizer)(
10310 fts5_tokenizer *pTokenizer,
10311 void (*xDestroy)(
void*)
10315 int (*xFindTokenizer)(
10319 fts5_tokenizer *pTokenizer
10323 int (*xCreateFunction)(
10327 fts5_extension_function xFunction,
10328 void (*xDestroy)(
void*)