exec错误码
#define sqlITE_OK 0 /* Successful result */
#define sqlITE_ERROR 1 /* sql error or missing database */
#define sqlITE_INTERNAL 2 /* An 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 sqlite_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 /* (Internal Only) 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 /* (Internal Only) Database table is empty */
#define sqlITE_SCHEMA 17 /* The database schema changed */
#define sqlITE_TOOBIG 18 /* Too much data for one row of a table */
#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_ROW 100 /* sqlite_step() has another row ready */
#define sqlITE_DONE 101 /* sqlite_step() has finished executing */
sqlite优化方法
详细出处参考:http://www.jb51.net/article/15836.htm
rc = sqlite3_exec(db,"BEGIN;",&zErrMsg);
//执行sql语句
rc = sqlite3_exec(db,"COMMIT;",&zErrMsg);
sqlITE AUTO_INCREMENT 复位:
DELETE FROM sqlite_sequence WHERE name = 'your_table_name' |
ALTERTABLE your_table_name AUTO_INCREMENT = 1 |
主键自动增长,只需
primary key autoincrement