对于这些二进制数据(blob字段)我们不能像处理普通的文本那样 简单的插入或者查询,为此SQLite提供了一组函数来处理这种BLOB字段类型。下面的代码演示了如何使用这些API函数。 首先我们要建立一个数据库: sqlite3_exec(db, "CREATE TABLE list (fliename varchar(128) UNIQUE, fzip blob);", 0, 0, &zErrMsg); /...
exec(query:"select * from \(t) where age>:age or name =:name",values:Int32(1),"XX") 上述中我们实例中看到:age :name 是提供给SQLite进行prepare的形参,Int32(1), "xx"是提供的数据条件(需要注意的是形参和数据条件的顺序要一一对应)。 有了大概的认识之后我们看看内部是如何实现的 代码语言:java...
sqlite3_exec() 程序解析并执行由 sql 参数所给的每个命令,直到字符串结束或者遇到错误为止。 3 sqlite3_close(sqlite3*) 该例程关闭之前调用 sqlite3_open() 打开的数据库连接。所有与连接相关的语句都应在连接关闭之前完成。 如果还有查询没有完成,sqlite3_close() 将返回 SQLITE_BUSY 禁止关闭的错误消息。
NSString * strSql =@"CREATE TABLE IF NOT EXISTS tbl_User (Id integer NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,UserName text,UserPass text)";char *pErrorMsg;if (SQLITE_OK == sqlite3_exec(m_pDb, strSql.UTF8String, NULL, NULL, &pErrorMsg)) { NSLog(@"创建数据表成功!"); }else{ N...
BLOB:表示二进制数据。 2.SQLite数据库支持以下约束: PRIMARY KEY:用于指定主键列。 AUTOINCREMENT:用于指定自动递增列。 NOT NULL:用于指定不为NULL值的列。 UNIQUE:用于指定值唯一的列。 六,SQLite常用的函数接口 sqlite3_open:打开与SQLite数据库文件的连接 ...
int sqlite3_exec( sqlite3 *pDb, /* 打开的数据库的句柄 */ const char *sql, /* 要执行的SQL语句 */ int (*callback)(void *arg,int col,char **str,char **name), /*回调函数,处理SQL语句执行返回的结果(查询),一条结果调用一次
int sqlite3_bind_blob(sqlite3_stmt*, int, const void*, int n, void()(void)); 功能:为查询结构体绑定数据 PARAM1(IN):查询结构体 PARAM2(IN):绑定第几个数据(sql语句中的第几个问号(?)) PARAM3(IN):二进制数据指针 PARAM4(IN):二进制数据长度 ...
(timerid INTEGER PRIMARY KEY AUTOINCREMENT,time INTEGER,remaintime INTEGER,iconuri BLOB,vibrate INTEGER,status INTEGER,message TEXT)",TableName];if(sqlite3_exec(database, [createSQL UTF8String], NULL, NULL, &erroMsg)!= SQLITE_OK){sqlite3_close(database);printf("create table faild");return...
sqlite3_exec(), 执行非查询的sql语句 sqlite3_prepare(), 准备sql语句,执行select语句或者要使用parameter bind时,用这个函数(封装了sqlite3_exec). Sqlite3_step(), 在调用sqlite3_prepare后,使用这个函数在记录集中移动。 Sqlite3_close(), 关闭数据库文件 ...
sqlite3_exec(), 执行非查询的sql语句 sqlite3_prepare(), 准备sql语句,执行select语句或者要使用parameter bind时,用这个函数(封装了sqlite3_exec). Sqlite3_step(), 在调用sqlite3_prepare后,使用这个函数在记录集中移动。 Sqlite3_close(), 关闭数据库文件 ...