加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

sqlite 用法总结

发布时间:2020-12-12 20:15:34 所属栏目:百科 来源:网络整理
导读:创建数据库 NSArray *paths= NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSString *strPaths = [documentsDirectory stringByAppendingPathComponent:datab

创建数据库

NSArray *paths= NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *strPaths =  [documentsDirectory stringByAppendingPathComponent:databaseName];
    if (sqlite3_open([strPaths UTF8String],&database) != SQLITE_OK) {
        sqlite3_close(database);
        NSAssert(0,@"MBDataBase info:>>>>Failed to open databse");
    }

执行sql语句
if(sqlite3_exec(database,[sSql_userTable UTF8String],nil,nil)!= SQLITE_OK)

解析查询结果:
const char *sql_select = [sSql_search_byID UTF8String];
    
    sqlite3_stmt *statement;
    statement = nil;
    if (sqlite3_prepare_v2(database,sql_select,-1,&statement,NULL) != SQLITE_OK) {
        NSLog(@"Error: failed to prepare statement with message:get channels.");
        return nil;
    }
    
    while (sqlite3_step(statement) == SQLITE_ROW) {
        char* c_result      = (char*) sqlite3_column_text(statement,0);
}

返回查询行数:

int nRow,nColumn;
    char * errmsg = NULL;
    char **dbResult;
    int unReadMessageCount = -1;
    if (sqlite3_get_table(database,[sSql_unRead_byID UTF8String],&dbResult,&nRow,&nColumn,&errmsg) == SQLITE_OK) {
        NSLog(@">>>>nRow>>>%d,>>>>nColumn>>%d",nRow,nColumn);
        int result_count = atoi((const char*)dbResult[nColumn]);

    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读