IOS 数据库FMDB(四)- (增、删、改、查)
来源:互联网 发布:java web 工作流引擎 编辑:程序博客网 时间:2024/06/03 19:18
参考:http://wenku.baidu.com/link?url=TK90OOhfVLK_2N5ZalNS5-hB_a5_Bxb7WLCx5ryzfOxHkCw8mW7tMAe63s-lpP0gzh7sytZ8cYuWabYbjMLPlxkm9cbZiphxE1sVDHbgMBa
依赖库: libsqlte3.0
-
-
-
-
-
-
-
-
-
-
-
- static const char encodingChar[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
-
-
- #import "ViewController.h"
-
- @interface ViewController (){
-
- NSString *__dataStr;
- NSData *__imageData;
- NSArray *__dataAry;
- NSString *__imageStr;
-
- }
-
- @end
-
- @implementation ViewController
-
- - (void)viewDidLoad
- {
- [super viewDidLoad];
-
-
- __dataStr = @"字符串";
- __dataAry = @[@"1",@"2"];
- __imageData = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:@"http://d.hiphotos.baidu.com/zhidao/pic/item/962bd40735fae6cd0009f9410eb30f2442a70f54.jpg"]];
- NSLog(@"===%@",__imageData);
-
-
- [self firDbUse];
-
-
- [self serMyDbUse];
- }
-
-
-
-
-
-
-
-
-
- -(void)firDbUse
- {
-
- NSString *documenPath = [NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES) objectAtIndex:0];
-
- NSString *dbPath = [documenPath stringByAppendingString:@"mydbFile.db"];
-
-
-
- FMDatabaseQueue *dbQueue = [FMDatabaseQueue databaseQueueWithPath:dbPath];
-
-
- [dbQueue inDatabase:^(FMDatabase *db) {
- BOOL result=[db executeUpdate:@"CREATE TABLE IF NOT EXISTS t_person (id integer PRIMARY KEY AUTOINCREMENT, name text NOT NULL, age integer NOT NULL);"];
- if (result) {
- NSLog(@"创表成功");
- }else
- {
- NSLog(@"创表失败");
- }
- }];
-
-
-
- [dbQueue inDatabase:^(FMDatabase *db) {
- [db executeUpdate:@"INSERT INTO t_person (name, age) VALUES (?, ?);",@"wendingding", @22];
- [db commit];
-
- }];
-
-
- [dbQueue inDatabase:^(FMDatabase *db) {
-
- FMResultSet *resultSet = [db executeQuery:@"SELECT * FROM t_person"];
-
-
- while ([resultSet next]) {
- int ID = [resultSet intForColumn:@"id"];
- NSString *name = [resultSet stringForColumn:@"name"];
- int age = [resultSet intForColumn:@"age"];
- NSLog(@"第一种:%d %@ %d", ID, name, age);
- }
- }];
-
- [dbQueue close];
-
- }
-
-
-
-
-
-
-
- -(void)serMyDbUse
- {
-
- NSString *documenPath = [NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES) objectAtIndex:0];
-
-
- NSString *dbPath = [documenPath stringByAppendingString:@"serDBFile.db"];
-
-
- FMDatabase *db = [FMDatabase databaseWithPath:dbPath];
-
-
- [db open];
-
- [db executeUpdate:@"CREATE TABLE MyDBb1 (Name text,Age)"];
-
- [db executeUpdate:@"create table if not exists User1(id integer primary key autoincrement,name,age,image)"];
-
-
- [db executeUpdate:@"INSERT INTO User1 (name, age) VALUES (?, ?);",@"字符111", __dataStr];
- [db executeUpdate:@"INSERT INTO User1 (name, age) VALUES (?, ?);",@"字符222", @"字符串2222"];
-
-
- [db executeUpdate:@"INSERT INTO MyDBb1 (name, age) VALUES (?, ?);",@"图片", __imageData];
-
-
-
- [db executeUpdate:@"UPDATE MyDBb SET Name = ? WHERE Name = ? ",@"李四",@"Jason"];
-
-
-
-
-
-
-
- FMResultSet *resultSet = [db executeQuery:@"SELECT * FROM MyDBb1"];
-
-
- while ([resultSet next]) {
- int ID = [resultSet intForColumn:@"id"];
- NSString *name = [resultSet stringForColumn:@"name"];
- NSData *age = [resultSet dataForColumn:@"age"];
- NSLog(@"第二种1:%d %@ %@", ID, name, age);
-
- UIImageView *imageV = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, 150, 150)];
- imageV.image = [UIImage imageWithData:age];
-
- imageV.backgroundColor = [UIColor grayColor];
-
- [self.view addSubview:imageV];
-
- }
-
- FMResultSet *resultSet1 = [db executeQuery:@"SELECT * FROM User1"];
-
-
- while ([resultSet1 next]) {
- int ID = [resultSet1 intForColumn:@"id"];
- NSString *name = [resultSet1 stringForColumn:@"name"];
- NSString *age = [resultSet1 stringForColumn:@"age"];
- NSLog(@"第二种2:%d %@ %@", ID, name, age);
-
-
- }
-
-
- }
-
-
- @end