如何在iphone中的sqlite数据库中插入图像
问题描述:
如何在数据库中插入图像,我试过,但没有插入。查询中的问题在哪里?这是我的模型类.m文件:sqlite3_prepare_v2
之后的文件中的代码我的跟踪未插入sqlite3_bind_blob
它直接在sqlite3_prepare_v2
之后。这里有什么问题,请帮助我。在这里保存数据是错误的。在模型类我创建UIImage* Photo;
,使协议和sys如何在iphone中的sqlite数据库中插入图像
+(void)SaveImagesToSql:(NSData *)imgDat :(int)getid
{
NSString *filePath = [BaseModal getDBPath];
sqlite3 *database;
sqlite3_stmt *updStmt;
NSLog(@"%@",filePath);
if (sqlite3_open([filePath UTF8String], &database) == SQLITE_OK)
{
NSString* sqliteQuery = [NSString stringWithFormat:@"UPDATE INTO Peoples (Photo) VALUES (?) where PeopleId =%i",getid];
if(sqlite3_prepare_v2(database, [sqliteQuery UTF8String] , -1, &updStmt, NULL) == SQLITE_OK) {
sqlite3_bind_blob(updStmt, 1, [imgDat bytes], [imgDat length], NULL);
}
sqlite3_finalize(updStmt);
}
sqlite3_close(database);
}
这是我的view.m文件我是从这个页面中选择图像,然后插入到源码文件
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
imageView.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
//UIImageWriteToSavedPhotosAlbum(imageView.image, self, nil, nil);
NSArray *sysPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);
NSString *docDirectory = [sysPaths objectAtIndex:0];
NSString *filePath = [NSString stringWithFormat:@"%@", docDirectory];
NSLog(@"thiss%@",filePath);
UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
if(picker.sourceType == UIImagePickerControllerSourceTypePhotoLibrary) {
UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);
[picker dismissModalViewControllerAnimated:YES];
return;
}
[picker release];
UIImage *image1 =imageView.image;
NSData *myData = UIImagePNGRepresentation(image1);
[PeopleModal SaveImagesToSql:myData :peopleid];
//[self.parentViewController dismissModalViewControllerAnimated:YES];
[picker dismissModalViewControllerAnimated:YES];
}
答
你不应该插入的斑点在分贝,这将使你的分贝非常非常缓慢!
您应该将图像保存在应用程序的文档目录中,并在数据库中仅保存图像的路径。
不要将数据存储在文档目录中的database.ave图像中,然后将该路径保存到数据库中... – Narayana 2012-02-28 09:40:12