我想插入、更新和删除并选择数据库中的 1000 条记录。我想在何时何地打开和关闭数据库连接。我插入,更新和删除数据库中的数据,但我错误“内存不足”,“无法打开数据库文件”,“锁定数据库”这种错误从我这边提出。这个问题怎么解决,求大神帮忙。。
问问题
1596 次
2 回答
1
嘿 raj 每当您要处理数据库时,您首先打开数据库 Open db,在进行更改后,您必须通过调用 Close Db 方法关闭数据库。以下是在 iPhone 中使用 sqlite 的一些链接
http://www.techotopia.com/index.php/An_Example_SQLite_based_iPhone_Application
http://blog.saers.com/archives/2008/03/14/sqlite-for-iphone-sdk/
http://how2s.org/index.php/How_to_get_started_with_SQLite_on_the_iPhone
我认为它可以帮助你。
于 2012-08-27T06:12:40.700 回答
0
NSData *d=UIImageJPEGRepresentation(image, 0.50);
[dm writeImageInTable:[Base64 encode:d]];
-(void)writeImageInTable:(NSString *)imageString
{
if (sqlite3_open([DB_PATH UTF8String], &database)==SQLITE_OK)
{
NSString *str=[NSString stringWithFormat:@"INSERT INTO imageTable (image) VALUES('%@')",imageString];
// NSLog(@"%@",str);
const char *getFolderQuery=[str UTF8String];
if(sqlite3_prepare_v2(database, getFolderQuery, -1, &queryForImage, NULL)==SQLITE_OK)
{
NSLog(@"test");
int queryResult;
if((queryResult=sqlite3_step(queryForImage)) == SQLITE_DONE)
{
NSLog(@"sqlite done insert");
}
NSLog(@"sqlite error inside %s", sqlite3_errmsg(database));
}
sqlite3_reset(queryForImage);
sqlite3_finalize(queryForImage);
NSLog(@"sqlite error %s", sqlite3_errmsg(database));
sqlite3_finalize(queryForImage);
}
else
{
}
if(sqlite3_close(database)==SQLITE_OK)
{
NSLog(@"database closed");
}
else
{
NSLog(@"database still open with error %s",sqlite3_errmsg(database));
}
}
于 2013-12-04T07:43:00.570 回答