亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? sqlite3.h.svn-base

?? SQlite 的使用 讀庫(kù) 寫(xiě)庫(kù)
?? SVN-BASE
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
/*
** 2001 September 15
**
** The author disclaims copyright to this source code.  In place of
** a legal notice, here is a blessing:
**
**    May you do good and not evil.
**    May you find forgiveness for yourself and forgive others.
**    May you share freely, never taking more than you give.
**
*************************************************************************
** This header file defines the interface that the SQLite library
** presents to client programs.
**
** @(#) $Id: sqlite.h.in,v 1.198 2007/01/26 00:51:44 drh Exp $
*/
#ifndef _SQLITE3_H_
#define _SQLITE3_H_
#include <stdarg.h>     /* Needed for the definition of va_list */

/*
** Make sure we can call this stuff from C++.
*/
#ifdef __cplusplus
extern "C" {
#endif

/*
** The version of the SQLite library.
*/
#ifdef SQLITE_VERSION
# undef SQLITE_VERSION
#endif
#define SQLITE_VERSION         "3.3.13"

/*
** The format of the version string is "X.Y.Z<trailing string>", where
** X is the major version number, Y is the minor version number and Z
** is the release number. The trailing string is often "alpha" or "beta".
** For example "3.1.1beta".
**
** The SQLITE_VERSION_NUMBER is an integer with the value 
** (X*100000 + Y*1000 + Z). For example, for version "3.1.1beta", 
** SQLITE_VERSION_NUMBER is set to 3001001. To detect if they are using 
** version 3.1.1 or greater at compile time, programs may use the test 
** (SQLITE_VERSION_NUMBER>=3001001).
*/
#ifdef SQLITE_VERSION_NUMBER
# undef SQLITE_VERSION_NUMBER
#endif
#define SQLITE_VERSION_NUMBER 3003013

/*
** The version string is also compiled into the library so that a program
** can check to make sure that the lib*.a file and the *.h file are from
** the same version.  The sqlite3_libversion() function returns a pointer
** to the sqlite3_version variable - useful in DLLs which cannot access
** global variables.
*/
extern const char sqlite3_version[];
const char *sqlite3_libversion(void);

/*
** Return the value of the SQLITE_VERSION_NUMBER macro when the
** library was compiled.
*/
int sqlite3_libversion_number(void);

/*
** Each open sqlite database is represented by an instance of the
** following opaque structure.
*/
typedef struct sqlite3 sqlite3;


/*
** Some compilers do not support the "long long" datatype.  So we have
** to do a typedef that for 64-bit integers that depends on what compiler
** is being used.
*/
#ifdef SQLITE_INT64_TYPE
  typedef SQLITE_INT64_TYPE sqlite_int64;
  typedef unsigned SQLITE_INT64_TYPE sqlite_uint64;
#elif defined(_MSC_VER) || defined(__BORLANDC__)
  typedef __int64 sqlite_int64;
  typedef unsigned __int64 sqlite_uint64;
#else
  typedef long long int sqlite_int64;
  typedef unsigned long long int sqlite_uint64;
#endif

/*
** If compiling for a processor that lacks floating point support,
** substitute integer for floating-point
*/
#ifdef SQLITE_OMIT_FLOATING_POINT
# define double sqlite_int64
#endif

/*
** A function to close the database.
**
** Call this function with a pointer to a structure that was previously
** returned from sqlite3_open() and the corresponding database will by closed.
**
** All SQL statements prepared using sqlite3_prepare() or
** sqlite3_prepare16() must be deallocated using sqlite3_finalize() before
** this routine is called. Otherwise, SQLITE_BUSY is returned and the
** database connection remains open.
*/
int sqlite3_close(sqlite3 *);

/*
** The type for a callback function.
*/
typedef int (*sqlite3_callback)(void*,int,char**, char**);

/*
** A function to executes one or more statements of SQL.
**
** If one or more of the SQL statements are queries, then
** the callback function specified by the 3rd parameter is
** invoked once for each row of the query result.  This callback
** should normally return 0.  If the callback returns a non-zero
** value then the query is aborted, all subsequent SQL statements
** are skipped and the sqlite3_exec() function returns the SQLITE_ABORT.
**
** The 1st parameter is an arbitrary pointer that is passed
** to the callback function as its first parameter.
**
** The 2nd parameter to the callback function is the number of
** columns in the query result.  The 3rd parameter to the callback
** is an array of strings holding the values for each column.
** The 4th parameter to the callback is an array of strings holding
** the names of each column.
**
** The callback function may be NULL, even for queries.  A NULL
** callback is not an error.  It just means that no callback
** will be invoked.
**
** If an error occurs while parsing or evaluating the SQL (but
** not while executing the callback) then an appropriate error
** message is written into memory obtained from malloc() and
** *errmsg is made to point to that message.  The calling function
** is responsible for freeing the memory that holds the error
** message.   Use sqlite3_free() for this.  If errmsg==NULL,
** then no error message is ever written.
**
** The return value is is SQLITE_OK if there are no errors and
** some other return code if there is an error.  The particular
** return value depends on the type of error. 
**
** If the query could not be executed because a database file is
** locked or busy, then this function returns SQLITE_BUSY.  (This
** behavior can be modified somewhat using the sqlite3_busy_handler()
** and sqlite3_busy_timeout() functions below.)
*/
int sqlite3_exec(
  sqlite3*,                     /* An open database */
  const char *sql,              /* SQL to be executed */
  sqlite3_callback,             /* Callback function */
  void *,                       /* 1st argument to callback function */
  char **errmsg                 /* Error msg written here */
);

/*
** Return values for sqlite3_exec() and sqlite3_step()
*/
#define SQLITE_OK           0   /* Successful result */
/* beginning-of-error-codes */
#define SQLITE_ERROR        1   /* SQL error or missing database */
#define SQLITE_INTERNAL     2   /* NOT USED. Internal logic error in SQLite */
#define SQLITE_PERM         3   /* Access permission denied */
#define SQLITE_ABORT        4   /* Callback routine requested an abort */
#define SQLITE_BUSY         5   /* The database file is locked */
#define SQLITE_LOCKED       6   /* A table in the database is locked */
#define SQLITE_NOMEM        7   /* A malloc() failed */
#define SQLITE_READONLY     8   /* Attempt to write a readonly database */
#define SQLITE_INTERRUPT    9   /* Operation terminated by sqlite3_interrupt()*/
#define SQLITE_IOERR       10   /* Some kind of disk I/O error occurred */
#define SQLITE_CORRUPT     11   /* The database disk image is malformed */
#define SQLITE_NOTFOUND    12   /* NOT USED. Table or record not found */
#define SQLITE_FULL        13   /* Insertion failed because database is full */
#define SQLITE_CANTOPEN    14   /* Unable to open the database file */
#define SQLITE_PROTOCOL    15   /* Database lock protocol error */
#define SQLITE_EMPTY       16   /* Database is empty */
#define SQLITE_SCHEMA      17   /* The database schema changed */
#define SQLITE_TOOBIG      18   /* NOT USED. Too much data for one row */
#define SQLITE_CONSTRAINT  19   /* Abort due to contraint violation */
#define SQLITE_MISMATCH    20   /* Data type mismatch */
#define SQLITE_MISUSE      21   /* Library used incorrectly */
#define SQLITE_NOLFS       22   /* Uses OS features not supported on host */
#define SQLITE_AUTH        23   /* Authorization denied */
#define SQLITE_FORMAT      24   /* Auxiliary database format error */
#define SQLITE_RANGE       25   /* 2nd parameter to sqlite3_bind out of range */
#define SQLITE_NOTADB      26   /* File opened that is not a database file */
#define SQLITE_ROW         100  /* sqlite3_step() has another row ready */
#define SQLITE_DONE        101  /* sqlite3_step() has finished executing */
/* end-of-error-codes */

/*
** Using the sqlite3_extended_result_codes() API, you can cause
** SQLite to return result codes with additional information in
** their upper bits.  The lower 8 bits will be the same as the
** primary result codes above.  But the upper bits might contain
** more specific error information.
**
** To extract the primary result code from an extended result code,
** simply mask off the lower 8 bits.
**
**        primary = extended & 0xff;
**
** New result error codes may be added from time to time.  Software
** that uses the extended result codes should plan accordingly and be
** sure to always handle new unknown codes gracefully.
**
** The SQLITE_OK result code will never be extended.  It will always
** be exactly zero.
**
** The extended result codes always have the primary result code
** as a prefix.  Primary result codes only contain a single "_"
** character.  Extended result codes contain two or more "_" characters.
*/
#define SQLITE_IOERR_READ          (SQLITE_IOERR | (1<<8))
#define SQLITE_IOERR_SHORT_READ    (SQLITE_IOERR | (2<<8))
#define SQLITE_IOERR_WRITE         (SQLITE_IOERR | (3<<8))
#define SQLITE_IOERR_FSYNC         (SQLITE_IOERR | (4<<8))
#define SQLITE_IOERR_DIR_FSYNC     (SQLITE_IOERR | (5<<8))
#define SQLITE_IOERR_TRUNCATE      (SQLITE_IOERR | (6<<8))
#define SQLITE_IOERR_FSTAT         (SQLITE_IOERR | (7<<8))
#define SQLITE_IOERR_UNLOCK        (SQLITE_IOERR | (8<<8))
#define SQLITE_IOERR_RDLOCK        (SQLITE_IOERR | (9<<8))

/*
** Enable or disable the extended result codes.
*/
int sqlite3_extended_result_codes(sqlite3*, int onoff);

/*
** Each entry in an SQLite table has a unique integer key.  (The key is
** the value of the INTEGER PRIMARY KEY column if there is such a column,
** otherwise the key is generated at random.  The unique key is always
** available as the ROWID, OID, or _ROWID_ column.)  The following routine
** returns the integer key of the most recent insert in the database.
**
** This function is similar to the mysql_insert_id() function from MySQL.
*/
sqlite_int64 sqlite3_last_insert_rowid(sqlite3*);

/*
** This function returns the number of database rows that were changed
** (or inserted or deleted) by the most recent called sqlite3_exec().
**
** All changes are counted, even if they were later undone by a
** ROLLBACK or ABORT.  Except, changes associated with creating and
** dropping tables are not counted.
**
** If a callback invokes sqlite3_exec() recursively, then the changes
** in the inner, recursive call are counted together with the changes
** in the outer call.
**
** SQLite implements the command "DELETE FROM table" without a WHERE clause
** by dropping and recreating the table.  (This is much faster than going
** through and deleting individual elements form the table.)  Because of
** this optimization, the change count for "DELETE FROM table" will be
** zero regardless of the number of elements that were originally in the
** table. To get an accurate count of the number of rows deleted, use
** "DELETE FROM table WHERE 1" instead.
*/
int sqlite3_changes(sqlite3*);

/*
** This function returns the number of database rows that have been
** modified by INSERT, UPDATE or DELETE statements since the database handle
** was opened. This includes UPDATE, INSERT and DELETE statements executed
** as part of trigger programs. All changes are counted as soon as the
** statement that makes them is completed (when the statement handle is
** passed to sqlite3_reset() or sqlite_finalise()).
**
** SQLite implements the command "DELETE FROM table" without a WHERE clause
** by dropping and recreating the table.  (This is much faster than going
** through and deleting individual elements form the table.)  Because of
** this optimization, the change count for "DELETE FROM table" will be
** zero regardless of the number of elements that were originally in the
** table. To get an accurate count of the number of rows deleted, use
** "DELETE FROM table WHERE 1" instead.
*/
int sqlite3_total_changes(sqlite3*);

/* This function causes any pending database operation to abort and
** return at its earliest opportunity.  This routine is typically
** called in response to a user action such as pressing "Cancel"
** or Ctrl-C where the user wants a long query operation to halt
** immediately.
*/

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区永久视频免费观看| 蜜臀久久久久久久| 99国产精品99久久久久久| 久久免费精品国产久精品久久久久| 蜜桃视频在线观看一区| 精品久久免费看| 国产精品一色哟哟哟| 中文字幕一区视频| 日本道精品一区二区三区| 亚洲成人综合在线| 91麻豆精品国产91久久久使用方法| 日韩av电影免费观看高清完整版 | 床上的激情91.| 中文字幕av一区二区三区 | 色综合夜色一区| 经典三级一区二区| 国产亚洲成av人在线观看导航| 国产成人在线观看免费网站| 国产精品初高中害羞小美女文| 99热在这里有精品免费| 亚洲一区在线视频观看| 日韩欧美国产三级| 成人高清视频在线| 日韩综合小视频| 久久久精品国产99久久精品芒果| 成人动漫精品一区二区| 亚洲成人自拍一区| 久久久久国产精品麻豆| 色综合天天综合给合国产| 日韩精品一二三四| 亚洲欧洲av另类| 欧美一区二区三区电影| 波多野结衣一区二区三区| 亚洲国产精品久久人人爱| 久久色在线视频| 91极品美女在线| 国产精品77777| 午夜久久久久久电影| 中文字幕乱码日本亚洲一区二区| 欧美日韩专区在线| 国产成a人亚洲精品| 午夜精品成人在线| 中文字幕亚洲精品在线观看| 欧美一级二级三级乱码| 91小视频免费观看| 国产成人在线免费| 秋霞国产午夜精品免费视频| 亚洲青青青在线视频| 精品美女被调教视频大全网站| 91影视在线播放| 国产乱子轮精品视频| 亚洲3atv精品一区二区三区| 中文字幕在线不卡视频| 久久亚洲一级片| 欧美精品一二三四| 91福利视频网站| 成人免费三级在线| 国产伦精品一区二区三区免费| 亚洲va韩国va欧美va| 亚洲码国产岛国毛片在线| 国产清纯在线一区二区www| 日韩一本二本av| 欧美日韩免费高清一区色橹橹| 成人美女视频在线观看| 国产一区二区h| 麻豆精品一区二区三区| 香蕉成人伊视频在线观看| 亚洲三级理论片| 国产精品久久久久毛片软件| 国产片一区二区三区| 26uuu另类欧美亚洲曰本| 欧美成人一区二区三区片免费| 欧美午夜影院一区| 欧美丝袜自拍制服另类| 91猫先生在线| 在线视频欧美精品| 91影院在线观看| 91国产精品成人| 91成人免费网站| 欧美在线一二三| 欧美性xxxxx极品少妇| 91福利视频久久久久| 91黄色小视频| 91麻豆精品国产91久久久更新时间 | av中文字幕亚洲| 不卡的av电影在线观看| 成人黄色国产精品网站大全在线免费观看 | 在线播放一区二区三区| 欧美人妖巨大在线| 555www色欧美视频| 欧美一区二区播放| 久久色在线观看| 日本一区二区高清| 亚洲免费大片在线观看| 亚洲国产sm捆绑调教视频| 婷婷国产v国产偷v亚洲高清| 蜜芽一区二区三区| 国产福利一区在线| 色欧美日韩亚洲| 91.麻豆视频| 久久久久青草大香线综合精品| 国产女主播视频一区二区| 亚洲免费在线视频| 五月激情丁香一区二区三区| 久久99国产精品久久| 国产99一区视频免费| 色综合天天综合| 欧美一区二区久久久| 国产片一区二区三区| 亚洲一区免费观看| 美女一区二区视频| 99热99精品| 69精品人人人人| 国产精品国产自产拍高清av| 一区二区三区色| 韩国在线一区二区| 色婷婷亚洲一区二区三区| 日韩欧美精品在线视频| 国产精品女同互慰在线看| 午夜视黄欧洲亚洲| 国产福利不卡视频| 欧美日韩不卡视频| 欧美激情在线一区二区三区| 亚洲bt欧美bt精品| 成人少妇影院yyyy| 欧美一区二区在线播放| 成人欧美一区二区三区| 免费观看91视频大全| 99精品久久免费看蜜臀剧情介绍| 欧美男生操女生| 亚洲色图一区二区| 国产一区在线看| 欧美日本不卡视频| 综合在线观看色| 国产伦精品一区二区三区免费迷| 欧美探花视频资源| 中文字幕亚洲不卡| 黑人巨大精品欧美一区| 欧美日韩一区久久| 成人欧美一区二区三区视频网页| 免费成人你懂的| 欧美日韩中文一区| 亚洲天天做日日做天天谢日日欢| 国产真实乱对白精彩久久| 欧美日韩亚洲高清一区二区| 中文字幕精品综合| 国产麻豆精品theporn| 欧美一区二区三区视频| 亚洲激情校园春色| av中文字幕不卡| 日本一二三四高清不卡| 另类调教123区| 69堂精品视频| 午夜亚洲福利老司机| 色88888久久久久久影院按摩| 欧美国产一区二区| 国产凹凸在线观看一区二区| 日韩精品一区二区三区四区| 日韩中文字幕一区二区三区| 欧美专区亚洲专区| 一区二区三区中文字幕在线观看| 成人一区在线观看| 国产欧美日韩在线观看| 国产精品99久久久久久久vr | 国产一区二三区好的| 91精品国产高清一区二区三区| 一区二区三区欧美亚洲| 色综合久久久久久久久久久| 国产精品久久久久四虎| 波多野结衣中文字幕一区二区三区| 久久久久久亚洲综合| 国产91在线|亚洲| 国产欧美精品区一区二区三区| 国产精品自产自拍| 国产日韩av一区| 成人精品国产福利| 亚洲图片另类小说| 欧美在线观看一区| 日韩中文字幕av电影| 欧美α欧美αv大片| 韩国av一区二区三区四区| 国产日韩精品一区二区三区在线| 国产乱子伦视频一区二区三区| 久久精品水蜜桃av综合天堂| 成人美女视频在线观看18| 国产精品对白交换视频| 在线观看日韩一区| 亚洲va欧美va人人爽午夜| 欧美r级在线观看| 国产ts人妖一区二区| 亚洲精品日产精品乱码不卡| 欧美午夜电影一区| 久久国产精品露脸对白| 中文av一区特黄| 在线免费不卡视频| 另类小说色综合网站| 国产精品传媒入口麻豆| 欧美日韩高清一区二区不卡| 激情都市一区二区| ...xxx性欧美|