Ios 问题加载UITableView

Ios 问题加载UITableView,ios,uitableview,sqlite,Ios,Uitableview,Sqlite,您好,我在使用SQLite加载UITableView时遇到问题。我有这个密码 数据库结构: modelID integer PK autoincrement model varchar avaliable int image1 blob image2 blob image3 blob H AppDelegate我有这个功能: -(void) readModeDatabase { sqlite3 *database; aryModel = [[NSMutableArray

您好,我在使用SQLite加载UITableView时遇到问题。我有这个密码

数据库结构:

modelID integer PK autoincrement
model varchar
avaliable int
image1 blob
image2 blob
image3 blob
H

AppDelegate我有这个功能:

-(void) readModeDatabase {

     sqlite3 *database;
     aryModel = [[NSMutableArray alloc] init];
     if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {
          const char *sqlStatement = "select * from models";

          sqlite3_stmt *compiledStatement;
          if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {

               while(sqlite3_step(compiledStatement) == SQLITE_ROW) {

                    NSInteger *aModelID = sqlite3_column_int(compiledStatement, 1);

NSString *aModel = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 2)];                     NSInteger *aAvaliable = sqlite3_column_int(compiledStatement, 3);
                                //Here I need load on image  in my DBModel.

                    // Create a new animal object with the data from the database
                    DBModel *model = [[DBModel alloc] initWithName:aMode modelID:aModelID avaliable:aAvaliable];

                    [aryModel addObject:model];

                    [model  release];
               }
          }
          sqlite3_finalize(compiledStatement);

     }
     sqlite3_close(database);
}
事件单元格FORROWATINDEXPATH

// Set up the cell
DBModelAppDelegate *appDelegate = (DBModelAppDelegate *)[[UIApplication sharedApplication] delegate];
DBModel *models = (DBModel *)[appDelegate.aryModel objectAtIndex:indexPath.row];
cell.textLabel.text = models.model;
cell.detailTextLabel.text = [models.avaliable stringValue];

return cell;
我的问题是:

我在从数据库值中获取整数值时遇到问题​​玩NSInteger时,它们总是带零,并且数据库中有值​​对于专栏

当我尝试使用Subtitle样式上传UITableView并播放从数据库获得的myvariable值时,它不添加任何内容,也不添加任何格式,从而产生一条法线

我想做以下几点:

根据我上面提到的数据库结构,我填写了一个详细的UITableView,其中包含图像、标题和标题(如果可能的话,根据值为图片标题或星星),这是所有需要完成的工作,并通过单击call details在线完成


谢谢

我相信您的ReadMode数据库功能有问题。当从数据库中读取记录时,列的引用从0开始(这与从1开始的存储/更新相比很奇怪),上面的行从数据库中读取1,所以它实际上是在读取第二列,而不是第一列。所以,要根据数据库结构从数据库中读取modelID,您应该像这样读取它

 NSInteger aModelID = sqlite3_column_int(compiledStatement, 0);
此外,NSInteger只是长整数的同义词,NSNumber是objective c类。所以NSInteger不应该将指针设为(NSInteger*)。欲了解更多信息,请访问

并根据需要在课堂上的所有地方和其他地方纠正同样的错误

(NSInteger *) to (NSInteger)
 NSInteger aModelID = sqlite3_column_int(compiledStatement, 0);
(NSInteger *) to (NSInteger)