ios fmdb错误未第二次插入

Posted

技术标签:

【中文标题】ios fmdb错误未第二次插入【英文标题】:ios fmdb error not inserting second time 【发布时间】:2013-02-22 09:23:15 【问题描述】:

我使用 FMDb 插入 sqlite 数据库我的代码是这样的

在第一个视图控制器中:

   emp.questions = question;
                if ([finalArray count]==3) 
                    emp.option0 = [finalArray objectAtIndex:0];
                    emp.option1 = [finalArray objectAtIndex:1];
                    emp.option2 = [finalArray objectAtIndex:2];
                    emp.option3= @"no option";
                    emp.option4= @"no option";
                    emp.option5= @"no option";


                
                  if ([finalArray count]==4) 
                emp.option0 = [finalArray objectAtIndex:0];
                emp.option1 = [finalArray objectAtIndex:1];
                emp.option2 = [finalArray objectAtIndex:2];
                emp.option3 = [finalArray objectAtIndex:3];
                emp.option4= @"no option";
                emp.option5= @"no option";

                  
                if ([finalArray count]==5) 
                emp.option0 = [finalArray objectAtIndex:0];
                emp.option1 = [finalArray objectAtIndex:1];
                emp.option2 = [finalArray objectAtIndex:2];
                emp.option3 = [finalArray objectAtIndex:3];
                emp.option4 = [finalArray objectAtIndex:4];
                emp.option5= @"no option";

                
                if ([finalArray count]==6) 
                    emp.option0 = [finalArray objectAtIndex:0];
                    emp.option1 = [finalArray objectAtIndex:1];
                    emp.option2 = [finalArray objectAtIndex:2];
                    emp.option3 = [finalArray objectAtIndex:3];
                    emp.option4 = [finalArray objectAtIndex:4];
                    emp.option5 = [finalArray objectAtIndex:5];

                

                [[DatabaseManager sharedDatabaseManager] insertDetails:emp];
                [finalArray removeAllObjects];

IN 数据库管理器

[[self database] executeUpdate:@"insert into questionstable(questions, option0,option1,option2,option3,option4,option5) values(?,?,?,?,?,?,?)",emp.questions,emp.option0,emp.option1,emp.option2,emp.option3,emp.option4,emp.option5];

第一次执行正常,但再次执行该函数时

[[DatabaseManager sharedDatabaseManager] insertDetails:emp] is  called from FirstViewController i get exception like this :

-[__NSCFString insertDetails:]: 无法识别的选择器发送到实例 0x71897a0 2013-02-22 14:49:59.926 ExamApp[3679:c07] * 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[__NSCFString insertDetails:]:无法识别的选择器发送到实例 0x71897a0 ' 请帮帮我

【问题讨论】:

【参考方案1】:

看起来像你的

[DatabaseManager sharedDatabaseManager]

正在返回错误的对象。 请在您的问题中发布此方法。

【讨论】:

以上是关于ios fmdb错误未第二次插入的主要内容,如果未能解决你的问题,请参考以下文章

带有离子项目的 ionic 3 应用程序中的键盘未第二次打开

单击右上角的关闭(x)按钮后,DOJO 对话框未第二次打开

fmdb 路径并第二次从另一个 viewController 使用 db

FMDB:添加新列并插入数据

FMDB:错误 14,无法打开数据库文件

带有 FMDB 的 iOS SQLite 在仅通过 TestFlight 分发临时构建时不断报告“内存不足”错误