I am new to sqlite3 in iOS,I am trying to update the existing record in device table which is as below I am not updating the primary key, though I am updating record based on primary key where deviceAppID is my PK
Here is code which I am trying
const char *updateStatement ="UPDATE Device SET deviceGUID=?,testGUID=?,deviceName=?,device=?,deviceOsVersion=?,platform=?,createdDateTime=?,updatedDateTime=?,status=? WHERE deviceAppID=1";
int success;
if(sqlite3_prepare_v2(mDatabase, updateStatement, -1, &mStatement, NULL) == SQLITE_OK)
{
sqlite3_bind_text(mStatement, 2, [device.deviceGUID UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(mStatement, 3, [device.testGUID UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(mStatement, 4, [device.deviceName UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(mStatement, 5, [device.device UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(mStatement, 6, [device.deviceOSVersion UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(mStatement, 7, [device.devicePlatform UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(mStatement, 8, [device.createdDateTime UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(mStatement, 9, [device.updatedDateTime UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_int(mStatement, 10, device.status);
success = sqlite3_step(mStatement);
if (success == SQLITE_ERROR) {
NSAssert1(0, @"Error: failed to insert into the database with message '%s'.", sqlite3_errmsg(mDatabase));
}
}
else {
NSAssert1(0, @"Error: failed to prepare statement with message '%s'.", sqlite3_errmsg(mDatabase));
}
sqlite3_finalize(mStatement);