开发者社区> 问答> 正文

获取表中列的全部数据

代码我想要获取所有引用数据,一共有320个引用。但是只得到了第一个引用。
-(NSMutableArray *)getAllQuotesData
{

NSMutableArray *quotesArray = [[NSMutableArray alloc] init];

NSString *sqlStr = [NSString stringWithFormat:@"SELECT quote FROM quotes"];

sqlite3_stmt *ReturnStatement = (sqlite3_stmt *) [self getStatement:sqlStr];

while (sqlite3_step(ReturnStatement)==SQLITE_ROW)
{
    @try
    {
        QuotesDC *myQuote = [[QuotesDC alloc] init];

         NSString *user_id = [NSString stringWithUTF8String:(char 

*)sqlite3_column_text(ReturnStatement,0)];

         NSString *category = [NSString stringWithUTF8String:(char *)sqlite3_column_text(ReturnStatement,1)];
         NSString *subcategory = [NSString stringWithUTF8String:(char *)sqlite3_column_text(ReturnStatement,2)];
         NSString *quote = [NSString stringWithUTF8String:(char *)sqlite3_column_text(ReturnStatement,0)];
         NSString *star = [NSString stringWithUTF8String:(char *)sqlite3_column_text(ReturnStatement,4)];

        myQuote.userid = [user_id integerValue];
        myQuote.category = category;
        myQuote.subcategory = subcategory;
        myQuote.quote = quote;
        myQuote.star = star;
        [quotesArray addObject:myQuote];
        NSLog(@"%u", quotesArray.count);
    }
    @catch (NSException *ept) {
        NSLog(@"Exception in %s, Reason: %@", __PRETTY_FUNCTION__, [ept reason]);
    }
    return  quotesArray;
}

}

展开
收起
a123456678 2016-07-18 14:12:11 1636 0
1 条回答
写回答
取消 提交回答
  • 代码没有问题哦,只是返回的dataArray在循环外面。你需要加载全部的引用,方法如下:

    -(NSMutableArray *)getAllQuotesData
    {

    NSMutableArray *quotesArray = [[NSMutableArray alloc] init];
    
    NSString *sqlStr = [NSString stringWithFormat:@"SELECT quote FROM quotes"];
    
    sqlite3_stmt *ReturnStatement = (sqlite3_stmt *) [self getStatement:sqlStr];
    
    while (sqlite3_step(ReturnStatement)==SQLITE_ROW)
    {
        @try
        {
            QuotesDC *myQuote = [[QuotesDC alloc] init];
    
             NSString *user_id = [NSString stringWithUTF8String:(char 

    *)sqlite3_column_text(ReturnStatement,0)];

             NSString *category = [NSString stringWithUTF8String:(char *)sqlite3_column_text(ReturnStatement,1)];
    
             NSString *subcategory = [NSString stringWithUTF8String:(char *)sqlite3_column_text(ReturnStatement,2)];
    
             NSString *quote = [NSString stringWithUTF8String:(char *)sqlite3_column_text(ReturnStatement,0)];
    
             NSString *star = [NSString stringWithUTF8String:(char *)sqlite3_column_text(ReturnStatement,4)];
    
            myQuote.userid = [user_id integerValue];
            myQuote.category = category;
            myQuote.subcategory = subcategory;
            myQuote.quote = quote;
            myQuote.star = star;
    
            [quotesArray addObject:myQuote];
            NSLog(@"%u", quotesArray.count);
        }
        @catch (NSException *ept) {
            NSLog(@"Exception in %s, Reason: %@", __PRETTY_FUNCTION__, [ept reason]);
        }
    }

    return quotesArray;
    }

    2019-07-17 19:57:49
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
交易风控数据的海量存储与多种离线计算处理 立即下载
交易风控数据的海量存储于实时访问 立即下载
存储分层企业数据存储类型选择与优化 立即下载