// 创建表(绿色的变量为NSNumber型)
- (void)creattablePresent {
NSString *sqlStr = [NSString stringWithFormat:@"create table if not exists Present(number integer primary key autoincrement, name text, cover_image_url text, price text, favorites_count text, purchase_url text, descriptionI text, image_urls text)"];
int result = sqlite3_exec(dbPoint, sqlStr.UTF8String, NULL, NULL, NULL);
if (result == SQLITE_OK) {
NSLog(@"建表成功");
}else {
NSLog(@"建表失败");
NSString *sqlStr = [NSString stringWithFormat:@"create table if not exists Present(number integer primary key autoincrement, name text, cover_image_url text, price text, favorites_count text, purchase_url text, descriptionI text, image_urls text)"];
int result = sqlite3_exec(dbPoint, sqlStr.UTF8String, NULL, NULL, NULL);
if (result == SQLITE_OK) {
NSLog(@"建表成功");
}else {
NSLog(@"建表失败");
}
// 插入 包括数组的插入
- (void)insertModelPresent:(HotModel
*)model {
// model.image_urls为数组
NSData *data = [NSJSONSerialization dataWithJSONObject:model.image_urls options:NSJSONWritingPrettyPrinted error:nil];
NSString *strArr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSString *sqlStr = [NSString stringWithFormat:@"insert into Present(name, cover_image_url, price, favorites_count, purchase_url, descriptionI, image_urls) values('%@', '%@', '%@', '%@', '%@', '%@', '%@')", model.name, model.cover_image_url, model.price, model.favorites_count, model.purchase_url, model.descriptionI, strArr];
int result = sqlite3_exec(dbPoint, sqlStr.UTF8String, NULL, NULL, NULL);
if (result == SQLITE_OK) {
NSLog(@"插入成功");
}else {
NSLog(@"插入失败" );
}
NSString *strArr = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSString *sqlStr = [NSString stringWithFormat:@"insert into Present(name, cover_image_url, price, favorites_count, purchase_url, descriptionI, image_urls) values('%@', '%@', '%@', '%@', '%@', '%@', '%@')", model.name, model.cover_image_url, model.price, model.favorites_count, model.purchase_url, model.descriptionI, strArr];
int result = sqlite3_exec(dbPoint, sqlStr.UTF8String, NULL, NULL, NULL);
if (result == SQLITE_OK) {
NSLog(@"插入成功");
}else {
NSLog(@"插入失败" );
}
/// 查找 里面包括数组的查找和nsnumber的查找}
- (NSMutableArray *)searchModel {
NSString *sqlStr = [NSString stringWithFormat:@"select * from Present"];
sqlite3_stmt *stmt = nil;
int result = sqlite3_prepare_v2(dbPoint, sqlStr.UTF8String, -1, &stmt, NULL);
NSMutableArray *arr = [NSMutableArray array];
if (result == SQLITE_OK) {
while (sqlite3_step(stmt) == SQLITE_ROW) {
const unsigned char *name = sqlite3_column_text(stmt, 1);
const unsigned char *price = sqlite3_column_text(stmt, 3);
const unsigned char *cover_image_url = sqlite3_column_text(stmt, 2);
const unsigned char *favorites_count = sqlite3_column_text(stmt, 4);
const unsigned char *purchase_url = sqlite3_column_text(stmt, 5);
const unsigned char *descriptionI = sqlite3_column_text(stmt, 6);
const unsigned char *image_urls = sqlite3_column_text(stmt, 7);
// TempModel *model = [[TempModel alloc] init];
HotModel *model =[[HotModel alloc] init];
model.name = [NSString stringWithUTF8String:(const char *)name];
NSString *pri = [NSString stringWithUTF8String:(const char *) price];
NSInteger pric = [pri integerValue];
model.price = [NSNumber numberWithInteger:pric];
model.cover_image_url = [NSString stringWithUTF8String:(const char *)cover_image_url];
NSString *fa = [NSString stringWithUTF8String:(const char *) favorites_count];
NSInteger fav = [fa integerValue];
model.favorites_count = [NSNumber numberWithInteger:fav];
model.purchase_url = [NSString stringWithUTF8String:(const char *)purchase_url];
model.descriptionI = [NSString stringWithUTF8String:(const char *)descriptionI];
NSString *strData = [NSString stringWithUTF8String:(const char *)image_urls];
NSData *dataArr = [strData dataUsingEncoding:NSUTF8StringEncoding];
NSMutableArray *array = [NSJSONSerialization JSONObjectWithData:dataArr options:NSJSONReadingMutableContainers error:nil];
model.image_urls = array;
[arr addObject:model];
[model release];
}
}else {
NSLog(@"查找失败");
}
return arr;
NSString *sqlStr = [NSString stringWithFormat:@"select * from Present"];
sqlite3_stmt *stmt = nil;
int result = sqlite3_prepare_v2(dbPoint, sqlStr.UTF8String, -1, &stmt, NULL);
NSMutableArray *arr = [NSMutableArray array];
if (result == SQLITE_OK) {
while (sqlite3_step(stmt) == SQLITE_ROW) {
const unsigned char *name = sqlite3_column_text(stmt, 1);
const unsigned char *price = sqlite3_column_text(stmt, 3);
const unsigned char *cover_image_url = sqlite3_column_text(stmt, 2);
const unsigned char *favorites_count = sqlite3_column_text(stmt, 4);
const unsigned char *purchase_url = sqlite3_column_text(stmt, 5);
const unsigned char *descriptionI = sqlite3_column_text(stmt, 6);
const unsigned char *image_urls = sqlite3_column_text(stmt, 7);
// TempModel *model = [[TempModel alloc] init];
HotModel *model =[[HotModel alloc] init];
model.name = [NSString stringWithUTF8String:(const char *)name];
NSString *pri = [NSString stringWithUTF8String:(const char *) price];
NSInteger pric = [pri integerValue];
model.price = [NSNumber numberWithInteger:pric];
model.cover_image_url = [NSString stringWithUTF8String:(const char *)cover_image_url];
NSString *fa = [NSString stringWithUTF8String:(const char *) favorites_count];
NSInteger fav = [fa integerValue];
model.favorites_count = [NSNumber numberWithInteger:fav];
model.purchase_url = [NSString stringWithUTF8String:(const char *)purchase_url];
model.descriptionI = [NSString stringWithUTF8String:(const char *)descriptionI];
NSString *strData = [NSString stringWithUTF8String:(const char *)image_urls];
NSData *dataArr = [strData dataUsingEncoding:NSUTF8StringEncoding];
NSMutableArray *array = [NSJSONSerialization JSONObjectWithData:dataArr options:NSJSONReadingMutableContainers error:nil];
model.image_urls = array;
[arr addObject:model];
[model release];
}
}else {
NSLog(@"查找失败");
}
return arr;
}
}