xcode-获取表中列的全部数据

问题描述

获取表中列的全部数据

代码我想要获取所有引用数据,一共有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;
    }

}

解决方案

代码没有问题哦,只是返回的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;
}
时间: 2024-12-10 11:50:48

xcode-获取表中列的全部数据的相关文章

mysql表关联只取关联表中最近一条数据

问题描述 mysql表关联只取关联表中最近一条数据 表A{id,userId,logTime} 表B{id,userId,departmentId,updateTime} 表A为数据记录 表B相当于历史记录表(userId在updateTime时间之前的departmentId) 现在表A与表B关联 但是只能让表B中符合条件的最近一记录关联上 (也是updateTime在logTime之前并且最近的一条) 我是这么做的 SELECT A.id,B.userId,B.departmentId FR

date-mysql中怎么向表中插入当前日期的数据?

问题描述 mysql中怎么向表中插入当前日期的数据? 表里面应该设置成什么类型 然后应该插入什么数据能成功获取当前日期啊? 解决方案 使用datetime字段 update 表 set 字段=now() 解决方案二: 返回当前日期select now() as 日期 解决方案三: http://blog.csdn.net/lujianxin1098/article/details/18709845 解决方案四: mysql 插入当前日期向oracle 和mysql 插入当前日期 解决方案五: i

复制数据库表中两个字段数据的SQL语句

复制数据库表中两个字段数据的SQL语句 今天为表新添加一个字段,但又想与表中的另一个字段值相同,由于数据过多想通过sql语句实现,经测试下面的这句话确实很好用.   复制代码 代码如下: update jb51_temp set B=A jb51_temp 代表表明 A是有数值的字段,B是新添加的字段 ,记住空值表放到前面,如果set a=b,那么你的数值都为空了,就麻烦了,建议操作前备份数据库. 如何将一个字段里的值复制添加到另一个字段中 比如,有二个字段A和B,A字段是值是"我",

c# 服务-从一个表中取出对应的数据 插入到另外一个表结构相同的表中

问题描述 从一个表中取出对应的数据 插入到另外一个表结构相同的表中 C# 写一个服务程序实现功能如下: 有两个结构相同的表A和B 要实现 从表A中取出符合条件的数据 插入到表B中去 然后把A表中的数据删除 ,注明:数据量很大 保证数据顺利插入B表中并删除A表中的数据 保证各个环节不出错: 大伙有什么高招 请指点下

一张表如何关联另一张表中的两条数据!出现错误!代码和表如下!在线等

问题描述 一张表如何关联另一张表中的两条数据!出现错误!代码和表如下!在线等 public DataTable GetScrapTirePage(StringBuilder SqlWhere, IList<SqlParam> IList_param, int pageIndex, int pageSize, ref int count) { StringBuilder strSql = new StringBuilder(); strSql.Append("select Base_S

jsp连sql server获取表中的某个值 并连接这个值的数据库

问题描述 jsp连sql server获取表中的某个值 并连接这个值的数据库 目前是连接到一个数据库A 根据A里的表判断登陆 但这个表里还有一个数据库B的连接字符串 类似这样 Server=192.27.94.10,11008;database=C_Model;user id=User;pwd=Pwd;Connect Timeout=30 怎么获取这个表内的字符串并连接到这个数据库B 解决方案 jsp连接sql server2005?(经测试连接成功)?? 接触Java或者JSP,难免会使用到数

insert-c++中将access数据导入foxpro时,只能导入每个表中的第一行数据

问题描述 c++中将access数据导入foxpro时,只能导入每个表中的第一行数据 导入数据时可以读取第一行数据并导入成功,读取第二行后不能导入. 代码如下: CString strSQL("insert into test(i_name, j_name) values("); while (!pRecordset->EndOfFile) { CString strId; strId.Format("%s",(const char *)(_bstr_t)(p

同表中的2行数据全部进行对比,取出不同的数据

问题描述 对同表中的2行数据全部进行对比,取出不同的数据ID字段1字段2字段3字段4...1abcd2accd预期的结果:ID字段21b2c请教高手该怎么实现?谢谢 解决方案 解决方案二:你的表结构设计得不好,这样只能一个一个对比了.解决方案三:引用1楼caozhy的回复: 你的表结构设计得不好,这样只能一个一个对比了. 那请问该怎么设计呢?字段有100个左右,有更合理的结构吗?解决方案四:用这样的表结构:id字段名值1字段1a1字段2b1字段3c1字段4d2字段1a...解决方案五:引用3楼c

如何向购物车表中插入多条数据,如果购物车中存在该数据,就只更新数量

问题描述 购物车表,向其中添加多条数据(Oracle数据库),使用insert into tablename select 'aa','bb' from dual union allselect 'aa1','bb1' from dual 但是现在的需求是,添加多条数据, 1.如果表中不存在这些数据,就添加, 2.如果存在就更新数量.这样的需求如何高效的实现了.请教大侠门.问题补充:谢谢各位.我获得一个connection后,创建一个statment,循环使用stmt.executeQuery(