Int main ()
{
Sqlite3 * db = NULL;// 创建数据库句柄
sqlite3_open ("example.db”,&db);//打开数据库
sqlite_stmt * stmt = NULL;// 创建statement 对象
char * sql = “”;
sqlite3_prepare_v2(db, sql, -1,&stmt, NULL);//将sql语句写入stmt中
//第三个参数为负,则读取到第一个0结束符;
sqlite3_step(stmt); //执行stmt语句
sqlite3_finalize(stmt);//执行完毕
sqlite3_close(db);//关闭数据库
return 0;
}
相关api
int sqlite3_open(
const char *filename, /*Database filename (UTF-8) */
sqlite3 **ppDb /* OUT:SQLite db handle */
); 打开数据库;返回值为零 , 则成功;
intsqlite3_close(sqlite3*);
关闭数据库;
typedef struct sqlite3_stmtsqlite3_stmt;
简介:An instance of this object represents a single SQLstatement that has been compiled into binary form and is ready to be evaluated. structsqlite3_stmt代表了一个sql语句;
int sqlite3_prepare_v2(
sqlite3 *db, /* Database handle */
const char *zSql, /* SQL statement, UTF-8 encoded */
int nByte, /* Maximum length of zSql in bytes. */
sqlite3_stmt **ppStmt, /* OUT: Statement handle */
const char **pzTail /* OUT: Pointer to unused portion of zSql */
);创建sql语句,将sql中的内容创建到 stmt中;
经常用V2版本;常用写法:sqlite3_prepare_v2(db, sql, -1, &stmt, NULL);
int sqlite3_step(sqlite3_stmt*);
官方解释是 evaluatethe statement; 意思就是启动这个语句;
返回值有 SQLITE_BUSY,SQLITE_DONE, SQLITE_ROW, SQLITE_ERROR, or SQLITE_MISUSE.
如果完成的话 返回 SQLITE_DONE;