Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 我无法将数据插入sqlite数据库。。我不知道';显示时没有任何错误,但值未插入数据库_Objective C_Sqlite - Fatal编程技术网

Objective c 我无法将数据插入sqlite数据库。。我不知道';显示时没有任何错误,但值未插入数据库

Objective c 我无法将数据插入sqlite数据库。。我不知道';显示时没有任何错误,但值未插入数据库,objective-c,sqlite,Objective C,Sqlite,这是我写的代码 NSArray *path= NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docpath = [path objectAtIndex:0]; dbpathstring = [docpath stringByAppendingPathComponent:@"UserTable.db"]; char *error,*error1; NSFileM

这是我写的代码

NSArray *path= NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docpath = [path objectAtIndex:0];
dbpathstring = [docpath stringByAppendingPathComponent:@"UserTable.db"];
char *error,*error1;

NSFileManager *filemanager= [NSFileManager defaultManager];
if(![filemanager fileExistsAtPath:dbpathstring])
{
    const char *dbpath=[dbpathstring UTF8String];

    if(sqlite3_open(dbpath, &userdb1)==SQLITE_OK)
    {
        const char *sql_stat= "CREATE TABLE IF NOT EXISTS USERTABLE (CARDNUMBER INTEGER,BALANCE INTEGER,DATE TEXT)";
        sqlite3_exec(userdb1, sql_stat, NULL, NULL, &error);
        sqlite3_close(userdb1);

    }
}


if(sqlite3_open([dbpathstring UTF8String], &userdb1)==SQLITE_OK)
{


    NSString *insertstmnt= [NSString stringWithFormat:@"INSERT INTO USERTABLE (CARDNUMBER,BALANCE,DATE) VALUES((\"%d\", \"%d\", \"%s\")",[crd1 intValue],[bal1 intValue],[rdt1 UTF8String]];

    const char *insert_stmt = [insertstmnt UTF8String];


    sqlite3_exec(userdb1, insert_stmt, NULL, NULL, &error1);

        NSLog(@"After Creation in insert exec");

        NSLog(@"row added");
        UserTables *usertable = [[UserTables alloc]init];
        [usertable setCardnumber:[crd1 intValue]];
        [usertable setBalance:[bal1 intValue]];
        [usertable setDate:rdt1];
        [sections addObject:usertable];


    sqlite3_close(userdb1);
您的
插入
查询中有一个额外的
),导致语法错误:

INSERT INTO USERTABLE (CARDNUMBER,BALANCE,DATE) VALUES((\"%d\", \"%d\", \"%s\")
INSERT INTO USERTABLE (CARDNUMBER,BALANCE,DATE) VALUES(\"%d\", \"%d\", \"%s\")
改为