工具 :
代码:
#import "ViewController.h"
#import "FMDB.h"
@interface ViewController ()
@property(nonatomic,strong)FMDatabase *db;
-(IBAction)insert;
- (IBAction)update;
- (IBAction)delete;
- (IBAction)query;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
NSString *path=[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject]stringByAppendingPathComponent:@"student.sqlite"];
NSLog(@"%@",path);
self.db=[FMDatabase databaseWithPath:path];
if ([self.db open]) {
NSLog(@"数据库打开成功");
BOOL result=[self.db executeUpdate:@"create table if not exists t_student(id integer primary key autoincrement,name text,age integer);"];
if (result) {
NSLog(@"建表成功");
}else
{
NSLog(@"建表失败");
}
}else{
NSLog(@"数据库打开失败"); }
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
- (IBAction)insert{
for (int i=0; i<40; i++) {
NSString *name=[NSString stringWithFormat:@"rose-%d",arc4random()%1000];
NSNumber *age=@(arc4random()%100+1);
[self.db executeUpdate:@"insert into t_student(name,age)values(?,?);",name,age];
}
}
- (IBAction)update {
[self.db executeUpdate:@"update t_student set age=? where name=?;",@20,@"jack"];
}
- (IBAction)delete {
[self.db executeUpdate:@"delete from t_student where age>?;",@60];
}
- (IBAction)query {
FMResultSet *rs=[self.db executeQuery:@"select * from t_student where age>?;",@50];
while (rs.next) {
int ID=[rs intForColumn:@"id"];
NSString *name=[rs stringForColumn:@"name"];
int age=[rs intForColumn:@"age"];
NSLog(@"%d %@ %d",ID,name,age);
}
}
@end
运行
- 在运行结果中会显示出路径,找到student.sqlite
-![](https://img-blog.csdn.net/20160709214442720)
- 打开student.sqlite
![这里写图片描述](https://img-blog.csdn.net/20160710174626998)
- 点击模拟器中的插入、更改、删除、查询,查看student.sqlite中数据的变化
![这里写图片描述](https://img-blog.csdn.net/20160710173858699)