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

iphone – SQLite3 – 不按顺序调用的库例程

发布时间:2020-12-14 19:59:42 所属栏目:百科 来源:网络整理
导读:当为SQLite3 db-selecct查询运行以下准备语句时,我得到一个SQLLite错误21“库程序不按顺序调用”: sqlite3 *lDb;sqlite3_stmt *lStmt;NSNumberFormatter *lNbrFmt = [[[NSNumberFormatter alloc] init] autorelease];// Define SQL statement NSString *lSq
当为SQLite3 db-selecct查询运行以下准备语句时,我得到一个SQLLite错误21“库程序不按顺序调用”:

sqlite3             *lDb;
sqlite3_stmt           *lStmt;
NSNumberFormatter     *lNbrFmt = [[[NSNumberFormatter alloc] init] autorelease];

// Define SQL statement 
NSString *lSql = @"SELECT section,language,title,description"
@"                        selector-x-pos,selector-y-pos,gps-x-pos,gps-y-pos"
@"                   FROM sections"
@"               ORDER BY section ASC";

lSqlResult = sqlite3_prepare_v2(lDb,[lSql UTF8String],-1,&lStmt,NULL);
NSLog(@"%@",[NSString stringWithUTF8String:sqlite3_errmsg(lDb)]);

我究竟做错了什么?

解决方法

Uopon进一步调查我发现了我的错误.我应该在运行prep语句之前先打开db.

代码应如下所示:

sqlite3             *lDb;
sqlite3_stmt           *lStmt;
NSNumberFormatter     *lNbrFmt = [[[NSNumberFormatter alloc] init] autorelease];

// Define SQL statement 
NSString *lSql = @"SELECT section,gps-y-pos"
@"                   FROM sections"
@"               ORDER BY section ASC";

if(sqlite3_open([[fileMethods databasePath] UTF8String],&lDb) == SQLITE_OK) {
    lSqlResult = sqlite3_prepare_v2(lDb,NULL);
    NSLog(@"%@",[NSString stringWithUTF8String:sqlite3_errmsg(lDb)]);
...

(编辑:李大同)

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

    推荐文章
      热点阅读