vendredi 26 juin 2015

How to execute two insert query in single statement in sqlite3

I am trying to insert the values in two different tables in single statement, first insert query in working second query is not working.

sqlite3_stmt * statement= NULL;
const char *dbpath =[databasePath UTF8String];
if (sqlite3_open(dbpath, &mySqliteDB)== SQLITE_OK)
{
    for (PostObject * post in in_PostObject)
    {
**querry**
        NSString * postSql =[NSString stringWithFormat:@"insert or ignore into %@_post (postid,data,active) values (\"%@\",?,\"%d\");",tblPrefix,post.post_ID,post.active];

/*Appending First query with second query*/
        NSString * insertSQl =[postSql stringByAppendingString:[NSString stringWithFormat:@" insert into %@_forumuser (uid,utype,name) values (1,'parent','javid');",tblPrefix]];
        NSLog(@"%@",insertSQl);
        const char * insert_stmt=[insertSQl UTF8String];
        sqlite3_prepare_v2(mySqliteDB, insert_stmt, -1, &statement, NULL);
        sqlite3_bind_text(statement, 1, [post.jsonData UTF8String], -1, SQLITE_TRANSIENT);
        if (sqlite3_step(statement)==SQLITE_DONE)
        {
            success =TRUE;
        }
        else
        {
            NSLog(@"DB Error: %s", sqlite3_errmsg(mySqliteDB));
        }
    }
 }
    sqlite3_finalize(statement);
    sqlite3_close(mySqliteDB);

Aucun commentaire:

Enregistrer un commentaire