专栏首页python3struct sqlite3

struct sqlite3

struct sqlite3

{   sqlite3_vfs *pVfs;            /* OS Interface */   struct Vdbe *pVdbe;           /* List of active virtual machines */   CollSeq *pDfltColl;           /* The default collating sequence (BINARY) */   sqlite3_mutex *mutex;         /* Connection mutex */   Db *aDb;                      /* All backends */   int nDb;                      /* Number of backends currently in use */   int flags;                    /* Miscellaneous flags. See below */   i64 lastRowid;                /* ROWID of most recent insert (see above) */   i64 szMmap;                   /* Default mmap_size setting */   unsigned int openFlags;       /* Flags passed to sqlite3_vfs.xOpen() */   int errCode;                  /* Most recent error code (SQLITE_*) */   int errMask;                  /* & result codes with this before returning */   u16 dbOptFlags;               /* Flags to enable/disable optimizations */   u8 autoCommit;                /* The auto-commit flag. */   u8 temp_store;                /* 1: file 2: memory 0: default */   u8 mallocFailed;              /* True if we have seen a malloc failure */   u8 dfltLockMode;              /* Default locking-mode for attached dbs */   signed char nextAutovac;      /* Autovac setting after VACUUM if >=0 */   u8 suppressErr;               /* Do not issue error messages if true */   u8 vtabOnConflict;            /* Value to return for s3_vtab_on_conflict() */   u8 isTransactionSavepoint;    /* True if the outermost savepoint is a TS */   int nextPagesize;             /* Pagesize after VACUUM if >0 */   u32 magic;                    /* Magic number for detect library misuse */   int nChange;                  /* Value returned by sqlite3_changes() */   int nTotalChange;             /* Value returned by sqlite3_total_changes() */   int aLimit[SQLITE_N_LIMIT];   /* Limits */   struct sqlite3InitInfo {      /* Information used during initialization */     int newTnum;                /* Rootpage of table being initialized */     u8 iDb;                     /* Which db file is being initialized */     u8 busy;                    /* TRUE if currently initializing */     u8 orphanTrigger;           /* Last statement is orphaned TEMP trigger */   } init;   int nVdbeActive;              /* Number of VDBEs currently running */   int nVdbeRead;                /* Number of active VDBEs that read or write */   int nVdbeWrite;               /* Number of active VDBEs that read and write */   int nVdbeExec;                /* Number of nested calls to VdbeExec() */   int nExtension;               /* Number of loaded extensions */   void **aExtension;            /* Array of shared library handles */   void (*xTrace)(void*,const char*);        /* Trace function */   void *pTraceArg;                          /* Argument to the trace function */   void (*xProfile)(void*,const char*,u64);  /* Profiling function */   void *pProfileArg;                        /* Argument to profile function */   void *pCommitArg;                 /* Argument to xCommitCallback() */      int (*xCommitCallback)(void*);    /* Invoked at every commit. */   void *pRollbackArg;               /* Argument to xRollbackCallback() */      void (*xRollbackCallback)(void*); /* Invoked at every commit. */   void *pUpdateArg;   void (*xUpdateCallback)(void*,int, const char*,const char*,sqlite_int64); #ifndef SQLITE_OMIT_WAL   int (*xWalCallback)(void *, sqlite3 *, const char *, int);   void *pWalArg; #endif   void(*xCollNeeded)(void*,sqlite3*,int eTextRep,const char*);   void(*xCollNeeded16)(void*,sqlite3*,int eTextRep,const void*);   void *pCollNeededArg;   sqlite3_value *pErr;          /* Most recent error message */   union {     volatile int isInterrupted; /* True if sqlite3_interrupt has been called */     double notUsed1;            /* Spacer */   } u1;   Lookaside lookaside;          /* Lookaside malloc configuration */ #ifndef SQLITE_OMIT_AUTHORIZATION   int (*xAuth)(void*,int,const char*,const char*,const char*,const char*);                                 /* Access authorization function */   void *pAuthArg;               /* 1st argument to the access auth function */ #endif #ifndef SQLITE_OMIT_PROGRESS_CALLBACK   int (*xProgress)(void *);     /* The progress callback */   void *pProgressArg;           /* Argument to the progress callback */   unsigned nProgressOps;        /* Number of opcodes for progress callback */ #endif #ifndef SQLITE_OMIT_VIRTUALTABLE   int nVTrans;                  /* Allocated size of aVTrans */   Hash aModule;                 /* populated by sqlite3_create_module() */   VtabCtx *pVtabCtx;            /* Context for active vtab connect/create */   VTable **aVTrans;             /* Virtual tables with open transactions */   VTable *pDisconnect;    /* Disconnect these in next sqlite3_prepare() */ #endif   FuncDefHash aFunc;            /* Hash table of connection functions */   Hash aCollSeq;                /* All collating sequences */   BusyHandler busyHandler;      /* Busy callback */   Db aDbStatic[2];              /* Static space for the 2 default backends */   Savepoint *pSavepoint;        /* List of active savepoints */   int busyTimeout;              /* Busy handler timeout, in msec */   int nSavepoint;               /* Number of non-transaction savepoints */   int nStatement;               /* Number of nested statement-transactions  */   i64 nDeferredCons;            /* Net deferred constraints this transaction. */   i64 nDeferredImmCons;         /* Net deferred immediate constraints */   int *pnBytesFreed;            /* If not NULL, increment this in DbFree() */ #ifdef SQLITE_ENABLE_UNLOCK_NOTIFY   /* The following variables are all protected by the STATIC_MASTER   ** mutex, not by sqlite3.mutex. They are used by code in notify.c.   **   ** When X.pUnlockConnection==Y, that means that X is waiting for Y to   ** unlock so that it can proceed.   **   ** When X.pBlockingConnection==Y, that means that something that X tried   ** tried to do recently failed with an SQLITE_LOCKED error due to locks   ** held by Y.   */   sqlite3 *pBlockingConnection; /* Connection that caused SQLITE_LOCKED */   sqlite3 *pUnlockConnection;           /* Connection to watch for unlock */   void *pUnlockArg;                     /* Argument to xUnlockNotify */   void (*xUnlockNotify)(void **, int);  /* Unlock notify callback */   sqlite3 *pNextBlocked;        /* Next in list of all blocked connections */ #endif };

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Leetcode算法【34在排序数组中查找元素】

    在之前ARTS打卡中,我每次都把算法、英文文档、技巧都写在一个文章里,这样对我的帮助是挺大的,但是可能给读者来说,一下子有这么多的输入,还是需要长时间的消化。

    奔跑吧攻城狮
  • 听说你在等我的ARTS

    掐指一算,这应该是祖国妈妈生日之前最后一篇关于ARTS的打卡系列。每次周四,都感觉自己压力好大,准备资料、写算法肯定都得提前做,不然周四当天,我肯定没法完成。

    奔跑吧攻城狮
  • Medium高赞系列,如何正确的在Stack Overflow提问

    在我们写程序的时候,经常会遇到各色各样的问题,在国内,小伙伴们经常去知乎、CSDN、博客园、思否、安卓巴士等地方提问并获得答案。

    奔跑吧攻城狮
  • 为了给你们讲清楚数据库中间件有哪些,我也是拼了!

    卖羊肉串首先就得有羊肉,于是我就联系了很多养殖场,我又是一个比较负责任的人,为了保证羊肉的质量,我就去考察了一家又一家养殖场,同时我也是个“小气”的人,所以我考...

    Java技术江湖
  • 开源目标检测算法用于交通标志检测全方位评估

    交通标志检测在自动驾驶、汽车主动安全中应用非常重要,通用的目标检测算法可以通过微调网络的方式直接用于交通标志检测。如何在不同的硬件平台和应用环境中选择算法?今天...

    CV君
  • ARTS改版啦,在改变中前行

    这次打卡,稍微进行了一次改版,在算法和英文文档上进行了拆分,具体的内容在前两天的文章里已经输出,所以在这篇上针对这两块做了一个汇总。

    奔跑吧攻城狮
  • 力荐!计算机视觉开源工具中的瑞士军刀—Dlib最新高级特性教程

    OpenCV是计算机视觉开源工具中妇孺皆知的,但Dlib绝对是这几年快速上升的一颗新星,它并不追求大而全,但它实现的每一个模块和特性,都几乎是高质量开源算法的典...

    CV君
  • 这可能是目前最好的图像超分辨率算法,刚刚开源了

    CVPR 2018 Workshop NTIRE2018图像超分辨率的优胜方案开源了! 该算法在NTIRE2018所有三个realistic赛道中全部获得第一名...

    CV君

扫码关注云+社区

领取腾讯云代金券