声明
欢迎转载,但是请尊重作者劳动成果,转载请保留此框内声明,谢谢。文章出处:http://blog.csdn.net/iukey |
sqlite 是个好东西,对于移动平台来说。一直想写有关sqlite的教程,但是不知道从何写起,考虑了很久,还是从一个小Demo 谈起吧。我写了一个精简版的词典,实现了增删查改的基本功能。
工程结构如下。最后效果图如下。
效果图中可以看到,我查询 "cc",所有相关条目都查询出来了。
好了,现在开始讲解我的项目。首先可以看我的工程目录,QueryResultList 是界面控制类,DB 是数据库操作类。
整个项目的流程:我们在search框中输入要查询的内容点击搜索,底层模糊查询返回结果显示在tableView中。
我们先从底层的操作讲起,目前我就实现了插入与查询操作,删除与修改以后再补上:
1.创建数据库
- (const char*)getFilePath{//获取数据库路径
return [[NSString stringWithFormat:@"%@/Documents/l",NSHomeDirectory() ] UTF8String];
}
// DB.h
//iukey
#import <Foundation/Foundation.h>
#import "/usr/include/sqlite3.h"
@interface DB : NSObject{
sqlite3* pdb;//数据库句柄
}
@property(nonatomic,assign)sqlite3* pdb;
- (BOOL)insertRecordWithEN:(NSString*)en CN:(NSString*)cn Comment:(NSString*)comment;//插入一条纪录
- (NSMutableArray*)quary:(NSString*)str;//查询
- (const char*)getFilePath;//获取数据库路径
- (BOOL)createDB;//创建数据库
- (BOOL)createTable;//创建表
@end
2.创建表
- (BOOL)createTable{
char* err;
char* sql = "create table dictionary(ID integer primary key autoincrement,en nvarchar(64),cn nvarchar(128),comment nvarchar(256))";//创建表语句