FMDB的CRUD

来源:互联网 发布:mac java安装 编辑:程序博客网 时间:2024/06/17 15:02

首先,将附件中的文件加入到项目中,并在头文件中加入以下代码:

 

Ios代码  收藏代码
  1. #import "FMDatabase.h"  

 

然后,在Frameworks中导入libsqlite3.0.dylib。

 

1、实例化一个FMDatabase对象,并打开一个数据库,如果没有这个数据库,则会创建一个数据库

 

Ios代码  收藏代码
  1. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);  
  2. NSString *documentDirectory = [paths objectAtIndex:0];  
  3. NSString *dbPath = [documentDirectory stringByAppendingPathComponent:@"Test.db"];  
  4. FMDatabase *db= [FMDatabase databaseWithPath:dbPath] ;  
  5. if (![db open]) {  
  6.     [db release];  
  7.     return ;  
  8. }  

 

2、创建表

 

Ios代码  收藏代码
  1. [db executeUpdate:@"CREATE TABLE Users(Name text, Age integer)"];  

 

3、插入数据

 

Ios代码  收藏代码
  1. [db executeUpdate:@"INSERT INTO Users(Name, Age) VALUES(?, ?)", @"Eric", [NSNumber numberWithInt:25]]  

 

4、更新数据

 

Ios代码  收藏代码
  1. [db executeUpdate:@"UPDATE Users SET Name = ? WHERE Name = ? ", @"Michael", @"Eric"];  

 

5、删除数据

 

Ios代码  收藏代码
  1. [db executeUpdate:@"DELETE FROM Users WHERE Name = ?", @"Michael"];  

 

6、查询数据

 

Ios代码  收藏代码
  1. NSString *userName = [db stringForQuery:@"SELECT Name FROM Users WHERE Age = ?", @"25"];  

 

这样就查询返回了一条数据,如果查询返回多条数据怎么办呢?

 

FMResultSet是一个结果集,返回多条数据时,FMDB会将数据放在这个结果集中,然后再对这个结果集进行查询操作即可。

 

Ios代码  收藏代码
  1. FMResultSet *rs = [db executeQuery:@"SELECT * FROM Users"];  
  2. rs = [db executeQuery:@"SELECT * FROM Users WHERE Age = ?", @"25"];  
  3. while ([rs next]){  
  4.   NSLog(@"%@ %@", [rs stringForColumn:@"Name"], [rs stringForColumn:@"Age"]);  
  5. }  
  6. [rs close];  
 

FMDB地址:https://github.com/ccgus/fmdb

原创粉丝点击