As we learn more about the iPhone APIs we do a lot of web searching and reading of documentation. One question we had a hard time finding an answer to was how do we find the id (primary key) of the row we just inserted?
Our table has an auto-increment primary key field named id and we wanted to store that in our object after we inserted the row, but our web searches were not providing us an answer! Without knowing the terminology used by sqlite3 we were having real problems finding a solution. A little frustrated, we dug directly into the sqlite3 docs and found the answer. We figured we should post it here in hopes that if you have the same problem you’ll actually be able to find it when searching the web.
NSString* sql = @"insert into myTable (Title, Description) values ('My Title', 'My Description')";
sqlite3_exec(db, [sql UTF8String], NULL, NULL, &errorMsg);
int primaryKeyId = sqlite3_last_insert_rowid(db);