IOS之数据库的查找,删除,添加,更新
DB类之.h文件
#import <Foundation/Foundation.h>
#import <sqlite3.h>
@interface DB : NSObject
+(sqlite3 *)openDB;//打开数据库
-(void)closeDB;//关闭数据库
@end
DB类之.m文件
#import "DB.h"
#import <sqlite3.h>
static sqlite3 *db = nil;
@implementation DB
+(sqlite3 *)openDB
{
if(db)
{
return db;
}
//目标路径
NSString *docPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDirectory, YES)objectAtIndex:0];
//原始路径
NSString *filePath = [docPath stringByAppendingPathComponent:@"db.sqlite"];
NSFileManager *fm = [NSFileManager defaultManager];
if ([fm fileExistsAtPath:filePath] == NO)//如果doc下没有数据库,从bundle里面拷贝过来
{
NSString *bundle = [[NSBundle mainBundle]pathForResource:@"classDB" ofType:@"sqlite"];
NSError *err = nil;
if ([fm copyItemAtPath:bundle toPath:filePath error:&err] == NO) //如果拷贝失败
{
NSLog(@"%@",[err localizedDescription]);
}
}
sqlite3_open([filePath UTF8String], &db);
return db;
}
-(void)closeDB
{
if (db)
{
sqlite3_close(db);
}
}
@end
Person类.h文件
#import <Foundation/Foundation.h>
@interface Person : NSObject
@property(nonatomic,retain)NSString *name,*phone;
@property(nonatomic,assign)int age,ID;
-(id)initWithName:(NSString *)name phone:(NSString *)phone age:(int)age ID:(int)ID;
+(NSMutableArray *)findAll;
+(int)count;
+(Person *)findByID:(int)ID;
+(NSMutableArray *)findByname:(NSString *)name;
+(void)addName:(NSString *)name phone:(NSString *)phone age:(int)age;
+(void)deleteByID:(int)ID;
+(void)updataName:(NSString *)name phone:(NSString *)phone age:(int)age forID:(int)ID;
@end
Person类.m文件
#import "Person.h"
#import "DB.h"
@implementation Person
相关新闻>>
- 发表评论
-
- 最新评论 进入详细评论页>>
今日头条
更多>>您可能感兴趣的文章
- 深入理解iPhone静态库(手把手教你iphone开发
- iPhone开发 调用阿asp.net程序的webservice
- Cocoa Core Competencies 的Object creation 和IOS面试题示例
- ios 时间定时器 NSTimer应用demo
- ios 关于UITableView UITableViewCellAccessoryCheckmark 混乱的
- iphone开发基础三和c语言混编
- (iOS-iap防护)验证用户付费收据,拒绝iap
- iPhone开发 文件的增加删除查询
- iOS文件存磁盘的设想
- iphone-使用TextField及关闭键盘(useing TextField for in