如何在iphone中存储sqlite中的数组值

如何在iphone中存储sqlite中的数组值,iphone,objective-c,sqlite,Iphone,Objective C,Sqlite,在数据库中存储数组值时出错。我的最后一个数组值存储在数据库中。我认为柜台是合适的。在这段代码中,我哪里做错了?我正在数据库中创建一个计数器来存储数组值。 我收到这个错误消息Save error:library例程调用顺序错误 在这条线上############ -(BOOL)添加 { NSString*filePath=[BaseModal getDBPath]; NSLog(@“此检查:%@”,文件路径); sqlite3*数据库; if(sqlite3_打开([filePath UTF8St

在数据库中存储数组值时出错。我的最后一个数组值存储在数据库中。我认为柜台是合适的。在这段代码中,我哪里做错了?我正在数据库中创建一个计数器来存储数组值。 我收到这个错误消息Save error:library例程调用顺序错误 在这条线上############

-(BOOL)添加
{
NSString*filePath=[BaseModal getDBPath];
NSLog(@“此检查:%@”,文件路径);
sqlite3*数据库;
if(sqlite3_打开([filePath UTF8String],&database)==SQLITE_确定){
const char*sqlStatement=“插入到名称(名称、日期、日期、附加表单、数据)值(?、、、、?、?)”;
sqlite3_stmt*编译语句;
if(sqlite3\u prepare\u v2(数据库,sqlStatement,-1,&compiledStatement,NULL)==SQLITE\u OK)
{
NSDateFormatter*dateFormat=[[NSDateFormatter alloc]init];
[日期格式setDateFormat:@“dd/MM/yyyy”];
NSString*date=[dateFormat stringFromDate:date];
NSString*cdate=[dateFormat stringFromDate:cdate];
sqlite3_bind_text(编译语句,1,[name UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_bind_text(编译语句,2,[date UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_bind_text(编译语句,3,[cdate UTF8String],-1,SQLITE_TRANSIENT);
//sqlite3_bind_text(编译语句,4,[UDate UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_bind_int(编译语句,4,附加形式);
sqlite3_bind_text(编译语句,5,[data UTF8String],-1,SQLITE_TRANSIENT);
//sqlite3_bind_int(编译语句,6,i);
}
if(sqlite3\u步骤(compiledStatement)!=SQLITE\u完成){
NSLog(@“保存错误:%s”,sqlite3_errmsg(数据库));
sqlite3_最终确定(编译语句);
sqlite3_关闭(数据库);
返回FALSE;
}
否则{
TaskId=sqlite3\u last\u insert\u rowid(数据库);
sqlite3_重置(编译语句);
//sqlite3_最终确定(编译语句);
//现在插入到名称表中
const char*sqlStatement3=“插入TeaInfo(TitleId,TeaId)值(?,)”;
sqlite3_stmt*编译语句3;
if(sqlite3\u prepare\u v2(数据库、sqlStatement3、-1和compiledStatement3,NULL)=SQLITE\u确定){
sqlite3_bind_int(compiledStatement3,1,TitleId);
对于(int counter=0;counter请尝试以下代码

const char *sqlStatement3 = "insert into TeaInfo(TitleId,TeaId) VALUES (\"VALUE1\",\"VALUE2\)";
试试下面的代码

const char *sqlStatement3 = "insert into TeaInfo(TitleId,TeaId) VALUES (\"VALUE1\",\"VALUE2\)";

解决了
if(sqlite3\u prepare\u v2(数据库,sqlStatement3,-1,&compiledStatement3,NULL)==SQLITE\u OK)中的问题。
我必须为循环写入这一行,然后正确插入行。

解决了
if(sqlite3\u prepare\u v2(数据库,sqlStatement3,-1,&compiledStatement3,NULL)==SQLITE\u OK)中的问题
我必须为循环写入这一行,然后正确插入行。

请澄清您在哪一步收到错误,以及错误消息是什么。让我们知道您面临错误的确切位置…kiran我在计数器上面临错误数组请检查我做错了什么bec在数据库中它只插入最后一个数组值wh你不知道这个错误的答案是什么,但是你有没有想过使用FMDB。Is将使SQL的使用更加容易。请澄清你在哪一步收到错误,以及错误消息是什么。让我们知道你到底在哪里遇到错误…kiran我在计数器阵列上遇到错误请检查我做错了什么数据库它只插入最后一个数组值为什么不是所有的错误都没有答案,但是你有没有想过使用FMDB.Is会使SQL的使用更加容易。