作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何使用带有 NSData 的 sqlite3_column_blob 我需要传递什么参数
在我的 iPhone 应用程序中,我想在 BLOB 数据类型的 sqlite 数据库中检索以 NSData 格式存储的图像
为了恢复它
//select query
NSString *selectQuery = [NSString stringWithFormat:@"select image_column from tbl_image where id=1"];
NSArray *arraySelect = [database executeQuery:selectQuery];
//displaying image
NSData *imageData = [[arraySelect objectAtIndex:0] valueForKey:@"image_column"];
self.img3=[UIImage imageWithData:imageData];
imageView.image=img3;
最佳答案
sqlite *database;
sqlite3_stmt *Stmt;
sqlite3_open([[self getDBPath] UTF8String],&database)
- (NSString *) getDBPath
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory , NSUserDomainMask, YES);
NSString *documentsDir = [paths objectAtIndex:0];
return [documentsDir stringByAppendingPathComponent:@"XXX.sqlite"];
}
NSData*thumbnailData;
NSString *lSQL = [NSString stringWithFormat:@"insert into Table(Thumbnail1) values(?)"];
if(sqlite3_prepare_v2(database, [lSQL UTF8String], -1, &Stmt, NULL) == SQLITE_OK)
{
sqlite3_bind_blob(Stmt, 1,[thumbnailData bytes], [thumbnailData length], NULL);
sqlite3_step(Stmt);
sqlite3_reset(Stmt);
if(Stmt)
sqlite3_finalize(Stmt);
}
NSString *lSQL = [NSString stringWithFormat:@"select Thumbnail1 from table"];
if(sqlite3_prepare_v2(database, [lSQL UTF8String], -1, &Stmt, NULL) == SQLITE_OK)
{
while(sqlite3_step(Stmt) == SQLITE_ROW)
{
NSString *myColNameNSString = [NSString stringWithFormat:@"%s", sqlite3_column_name(Stmt)];
if ([myColNameNSString isEqualToString:@"Thumbnail1"])
{
thumbnailData = [[NSData alloc] initWithBytes:sqlite3_column_blob(Stmt) length:sqlite3_column_bytes(Stmt)];
}
}
}
关于iphone - 如何将 sqlite3_column_blob 与 NSData 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4725040/
我是一名优秀的程序员,十分优秀!