Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I'm not 100% sure, because there's no error detail provided, but it looks like <code>addStatement</code> is not being initialized. Does Objective-C initialize all pointers to 0 when they're allocated on the stack? I know that in Linux that would not work.</p> <p>Perhaps try this: <code>sqlite3_stmt *addStatement = nil;</code></p> <p>I have to wonder, why are you even checking <code>addStatement == nil</code>? There's no reason to check it, since you must initialize it in every case.</p> <p>In short, re-write like so:</p> <pre><code>(BOOL) addticket { NSString *event=@"max"; NSString *venue=@"tvm"; sqlite3 *database; databaseName = @"smbhDB.sql"; sqlite3_stmt *addStatement ; NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDir = [documentPaths objectAtIndex:0]; const char *sql ="insert into tickets (venue, event,) Values (?,?)"; databasePath = [documentsDir stringByAppendingPathComponent:databaseName]; /* this is no longer conditional code */ if(sqlite3_prepare_v2(database, sql, -1, &amp;addStatement, NULL) != SQLITE_OK) NSAssert1(0, @"444 Error while creating add statement. '%s'", sqlite3_errmsg(database)); sqlite3_bind_text(addStatement, 1, [venue UTF8String], -1, SQLITE_TRANSIENT); sqlite3_bind_text(addStatement, 2, [event UTF8String], -1, SQLITE_TRANSIENT); if(SQLITE_DONE != sqlite3_step(addStatement)) NSAssert1(0, @"Error while inserting data. '%s'", sqlite3_errmsg(database)); sqlite3_reset(addStatement); ... </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload