標籤:
1、使用依賴關係
a、需要添加libsqlite3.tbd 靜態庫。
b、需要添加第三方架構 FMBD、MJExtension。
2、 SQL語句類封裝名DataBaseSqlTool
類方法介紹:
/**
* 刪除表
*
* @param tableName 資料表名稱
*
* @return 刪除表是否成功
*/
+ (BOOL)deleteTable:(NSString *)tableName;
/**
* 清除表 (清空表中的內容)
*
* @param tableName 資料表名稱
*
* @return 清除表是否成功
*/
+ (BOOL)eraseTable:(NSString *)tableName;
/**
* 判斷是否存在表
*
* @param tableName 資料表名稱
*
* @return
*/
+ (BOOL)isTableOK:(NSString *)tableName;
/**
* 建立表格
*
* @param tableName 資料表名稱
* @param sqlStatement 表格屬性(SQL語句)
*
* @return 建立表格是否成功
* sql語句例子:@"CREATE TABLE IF NOT EXISTS t_home_status (id integer PRIMARY KEY AUTOINCREMENT, access_token text NOT NULL, status_idstr text NOT NULL, status_dict blob NOT NULL);"
*/
+ (BOOL)createWithTableName:(NSString *)tableName sqlStatement:(NSString*)sqlStatement;
/**
* 插入資料
*
* @param tableName 資料表名稱
* @param sqlStatement 插入的屬性和值(SQL語句)
*
* @return 插入資料是否成功
* sql語句例子:@"insert into tableName(資料表) (name,age) values (‘lisi‘,‘28‘)"
*/
+ (BOOL)insertWithTableName:(NSString *)tableName sqlStatement:(NSString*)sqlStatement;
/**
* 刪除資料
*
* @param tableName 資料表名稱
* @param deleteWhere 刪除條件(SQL語句)
*
* @return 刪除資料是否成功
* sql語句例子:@"delete from tableName(資料表) where name=‘lisi‘";
*/
+ (BOOL)deleteWithTableName:(NSString *)tableName deleteWhere:(NSString *)deleteWhere;
/**
* 更新資料
*
* @param tableName 資料表名稱
* @param setValue 更新資料(SQL語句)
* @param updateWhere 更新資料條件
*
* @return 跟新資料是否成功
* sql語句例子:@"update tableName(資料表) set age=‘23‘ where name=‘lisi‘";
*/
+ (BOOL)updateWithTableName:(NSString *)tableName setValue:(NSString*)setValue updateWhere:(NSString *)updateWhere;
/**
* 尋找資料
*
* @param tableName 資料表名稱
* @param findTable 需要尋找的屬性 該值為* 表示尋找表格中所有屬性
* @param findWhere 設定查詢條件
* @param resultClass 查詢返回的類名
* @param findResultBlock 查詢結果
*
* @return 尋找資料是否成功
* 查詢分精確查詢和模糊查詢詳細見http://blog.163.com/ding_123com/blog/static/211752221201542942837616/
* SQLite基礎知識參考資料 http://pan.baidu.com/s/1c1Choac
* SQLite編碼知識參考資料 http://pan.baidu.com/s/1jHYVBXs
* sql語句例子:@"select msg from tableName(資料表) where username=‘dy1‘ order by time desc limit 1"
*/
+ (BOOL)selectWithTableName:(NSString *)tableName findTable:(NSString *)findTable findWhere:(NSString *)findWhere resultClass:(Class)resultClass findResultBlock:(void(^)(NSMutableArray *reslut))findResultBlock;
/*
* 使用說明 只適用尋找單個的屬性為double類型的值
* 屬性說明同上
*/
+ (BOOL)selectSingleDoubleWithTableName:(NSString *)tableName findTable:(NSString *)findTable findWhere:(NSString *)findWhere indResultBlock:(void(^)(NSMutableArray *reslut))findResultBlock;
/*
* 使用說明 只適用尋找單個的屬性為int類型的值
* 屬性說明同上
*/
+ (BOOL)selectSingleIntWithTableName:(NSString *)tableName findTable:(NSString *)findTable findWhere:(NSString *)findWhere indResultBlock:(void (^)(NSMutableArray *))findResultBlock;
/*
* 使用說明 只適用尋找單個的屬性為字串的類型的值
* 屬性說明同上
*/
+ (BOOL)selectSingleCharWithTableName:(NSString *)tableName findTable:(NSString *)findTable findWhere:(NSString *)findWhere indResultBlock:(void (^)(NSMutableArray *))findResultBlock;
iOS開發針對SQL語句的封裝