SQLite填充表

时间:2013-08-25 20:03:42

标签: ios objective-c sqlite

嘿,我有这段代码:

-(void)populateTexts{
    self.texts = [[NSMutableArray alloc] init];

    FMDatabase *db = [[FMDBDataAccess alloc] init];

    self.texts = [db getTexts];
}

我一直收到错误: TextMsgViewController.m:41:17:使用“FMDBDataAccess *”类型的表达式初始化“FMDatabase * __ strong”的指针类型不兼容

TextMsgViewController.m:43:19:'FMDatabase'没有可见的@interface声明选择器'getTexts'

1 个答案:

答案 0 :(得分:0)

错误:

  

TextMsgViewController.m:41:17:使用“FMDBDataAccess *”类型的表达式初始化“FMDatabase * __ strong”的指针类型不兼容

意味着它所说的。 [[FMDBDataAccess alloc] init]创建FMDBDataAccess类型的对象。但是您的变量db被声明为FMDatabase *db,因此它希望指向FMDatabase类型的对象。 FMDatabaseFMDBDataAccess是不同的类型。

下一个错误:

  

'FMDatabase'没有可见的@interface声明选择器'getTexts'

同样简单明了。编译器查看FMDatabase的接口,因为它是db的类型。该类没有名为getTexts的方法。因此,编译器无法确定返回类型,也无法验证您的代码。

您的意思是dbFMDBDataAccess类型吗?