无法获取数据 - sqlite3



我将sqlite用于我的简单iOS应用程序。问题是我无法从查询中得到结果。我将跳过负责打开数据库的代码。它有效。

NSString *query = @"SELECT * FROM tickets LIMIT 0,1";
if(sqlite3_prepare_v2(database, [query UTF8String], -1, &statement, nil) == SQLITE_OK)
    {
    NSString *strResult = [NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 1)]; 
            NSLog(@"%@", strResult);
            sqlite3_finalize(statement);
    }    

这里的应用程序崩溃与一条消息:

NSInvalidArgumentException', reason: '*** +[NSString stringWithUTF8String:]: NULL cString'

我100%确信查询

SELECT * FROM tickets LIMIT 0,1

返回不为NULL的结果。我已经用sqlite客户端测试了上面的查询,它运行良好。

这里怎么了?

您没有评估您的语句。您应该使用:

int sqlite3_step(sqlite3_stmt*);

在CCD_ 1之后。

最新更新