首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SQL语句sqlite3_column_text有什么问题?

SQL语句sqlite3_column_text有什么问题?
EN

Stack Overflow用户
提问于 2010-04-20 00:36:08
回答 2查看 5.6K关注 0票数 3
代码语言:javascript
运行
复制
if(sqlite3_open([databasePath UTF8String], & database) == SQLITE_OK) {
    NSLog(@"DB OPENED");
    // Setup the SQL Statement and compile it for faster access
    const char *sqlStatement ="select name from Medicine";

    sqlite3_stmt *compiledStatement;

    int result = sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, nil); 
    NSLog(@"RESULT %d", result);

    if(result == SQLITE_OK) {
        NSLog(@"RESULT IS OK...");

        // Loop through the results and add them to the feeds array
        while(sqlite3_step(compiledStatement) == SQLITE_ROW) {
            // Read the data from the result row
            NSLog(@"WHILE IS OK");

            **araci = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 1)];**

            NSLog(@"Data read");


            NSLog(@"wow: %",araci);


        }//while 
    }//if sqlite_prepare v2
    // Release the compiled statement from memory
    sqlite3_finalize(compiledStatement);
    NSLog(@"compiled stmnt finalized..");
}
sqlite3_close(database);
NSLog(@"MA_DB CLOSED");

问题

1)除了粗体代码之外,一切都很好。当我运行应用程序时,抛出下面的异常。我的数据库中有一个表和一行,id (整数),name (varchar),desc (varchar) (我使用SQLite管理器创建了我的表)。

2-) SQLite管理器中的文本类型是什么?那是NSString吗?另外,如何将字符串值(在表中)放入NSMutableArray?(我真的很难转换。)

代码语言:javascript
运行
复制
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** +[NSString stringWithUTF8String:]: NULL cString'
EN

回答 2

Stack Overflow用户

发布于 2011-01-30 05:19:07

要处理数据库返回的null,可以使用以下代码来处理

代码语言:javascript
运行
复制
char *localityChars =  (char *)sqlite3_column_text(init_statement, 12);

if (localityChars ==null)
     self.Locality = nil;
else
     self.Locality = [NSString stringWithUTF8String: localityChars];
票数 4
EN

Stack Overflow用户

发布于 2010-04-20 00:46:56

当该列为空时,sqlite3_column_text将返回一个空指针。你需要检查一下这个。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2669145

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档