Reputation: 43
I did not find answer that satisfy me, I can insert data into database and I can also select from it on simulator, but when I close the simulator and open it again, I can't see any data. Also I opened it on the terminal and I did not see any data in it. Did I miss any line or is there any logic error?
What did you try? any suggest for me?
I inserted data into my code is like this:
databasePath = [[NSBundle mainBundle] pathForResource:@"persons" ofType:@"sqlite3"];
const char *dbpath = [databasePath UTF8String];
sqlite3_stmt *statement;
if (sqlite3_open(dbpath, &contactDB) == SQLITE_OK)
{
NSString *insertSQL = [NSString stringWithFormat: @"INSERT INTO person (id, name, address, photograph, telephone, fax, district) VALUES (\"%i\",\"%@\", \"%@\", \"%@\",\"%@\",\"%@\",\"%@\")", i, Name,Addresses, Image, Telephone,Fax,District];
const char *query_stmt = [insertSQL UTF8String];
sqlite3_prepare_v2(contactDB, query_stmt, -1, &statement, NULL);
if (sqlite3_step(statement) == SQLITE_DONE)
{
// NSLog(@"OK");
} else {
// NSLog(@"Problem!!!");
}
sqlite3_finalize(statement);
sqlite3_close(contactDB);
}
Upvotes: 2
Views: 1314
Reputation: 199
I was searching for the same answer because I was stuck as well, and I think someone else's post here gives a pretty good example.
Here is the information on the link that Inafziger gave:
iOS Data Storage Guidelines iCloud includes Backup, which automatically backs up a user’s iOS device daily over Wi-Fi. Everything in your app’s home directory is backed up, with the exception of the application bundle itself, the caches directory, and temp directory. Purchased music, apps, books, the Camera Roll, device settings, home screen and app organization, messages, and ringtones are backed up as well. Because backups are done wirelessly and stored in iCloud for each user, it’s best to minimize the amount of data that’s stored for your app. Large files will lengthen the time it takes to perform a backup and consume more of a user’s available iCloud storage.
To ensure that backups are as efficient as possible, be sure to store your app’s data according to the following guidelines:
Upvotes: 1
Reputation: 25740
You can not make changes to a database in the main bundle, because it is read only.
You must first copy it to a location where you can write to it, such as the users documents or cache directory.
The iOS data storage guidelines specify where you should save it, depending on the type of data.
Upvotes: 1