NSString *docsDir;
NSArray *dirPaths;
dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
docsDir = [dirPaths objectAtIndex:0];
databasePath = [[NSBundle mainBundle] pathForResource:@"etkYeni2" ofType:@"sqlite"];
const char *dbpath = [databasePath UTF8String];
sqlite3_stmt *statement;
if (sqlite3_open(dbpath, &contactDB) == SQLITE_OK){
NSLog(@"icerdeyim");
NSString *insertSQL = [NSString stringWithFormat: @"INSERT INTO etk (etkTip) VALUES ('%@')",yeniEkleLabel.text];
const char *query_stmt = [insertSQL UTF8String];
sqlite3_prepare_v2(contactDB, query_stmt, -1, &statement, NULL);
if (sqlite3_step(statement) == SQLITE_DONE)
{
NSLog(@"OK INSERTED");
} else {
NSLog(@"NOT INSERTED !!");
}
sqlite3_finalize(statement);
sqlite3_close(contactDB);
}
这是我从文本框中获取字符串并将其插入到 sqlite 数据库的部分代码。我从 firefox 扩展 sqlite 管理器创建了数据库并将其添加到应用程序中。它在模拟器和 ipod touch 中按我想要的方式运行(插入元素,当我使用 SELECT 查询时我可以看到它们),但它没有在 iphone 上插入元素。我的 ipod touch 在 iOS 5 上,而 iphone 在 iOS 6 上。是因为 iOS 或 iphone 的版本,ipod touch 与 sqlite 的伪装不同还是什么?我阅读了这个问题的大部分答案,但仍然没有得到解决方案。在这种情况下有人可以帮助我吗?谢谢 ..