Skip to content

基于FMDB二次封装,直接在数据库中存储Model

License

Notifications You must be signed in to change notification settings

XL-Andrew/DPDatabaseManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

DPDatabaseManager

基于FMDB进行二次封装,创建的用途主要用于聊天记录的存储。

##主要功能

  • 直接存储Model
  • 从数据库中取出的对象为传入的Model类型
  • 从数据库中取出的全部数据是由传入的Model类型组成的数组集合

##支持大部分Model数据类型 例如:

#import <Foundation/Foundation.h>

@interface DemoModel : NSObject

@property (nonatomic, copy) NSString *string;

@property (nonatomic, assign) NSInteger integer;

@property (nonatomic, assign) NSUInteger uinteger;

@property (nonatomic, assign) BOOL kBool;

@property (nonatomic, assign) char kchar;

@property (nonatomic, assign) float kfloat;

@property (nonatomic, assign) double kdouble;

@property (nonatomic, assign) int kint;

@property (nonatomic, assign) id kid;

@property (nonatomic, retain) NSArray *array;

@property (nonatomic, retain) NSMutableArray *mutableArray;

@property (nonatomic, retain) NSDictionary *dictionary;

@property (nonatomic, retain) NSMutableDictionary *mutableDictionary;

@end

##使用方法

  • 单例方式实例化
+ (instancetype)sharedDBManager;
  • 插入数据
/* 创建表或插入数据
 *
 * @param  model    所需存储的Model数据
 * @param  fileName 表名
 *
 * @return 是否创建或插入成功
 */
- (BOOL)insertDataWithModel:(id)model withFileName:(NSString *)fileName;
  • 获取表中最后一条数据
/* 获取表中最后一条数据
 *
 * @param  kclass   Model类
 * @param  fileName 表名
 *
 * @return Model类
 */
- (id)getLastDataWithModelClass:(Class)kclass withFileName:(NSString *)fileName;
  • 倒序查找指定数量数据
/*
 * @param  count    所需数据个数
 * @param  kclass   Model类
 * @param  fileName 表名
 *
 * @return 所存Model类数组
 */
- (NSArray *)getDataWithCount:(NSUInteger)count withModelClass:(Class)kclass withFileName:(NSString *)fileName;
  • 获取表中全部数据
/*
 * @param  kclass   Model类
 * @param  fileName 表名
 *
 * @return 所存Model类数组
 */
- (NSArray *)getAllDataWithModelClass:(Class)kclass withFileName:(NSString *)fileName;
  • 删除表文件
- (BOOL)deleteDBFileWithFileName:(NSString *)fileName;

About

基于FMDB二次封装,直接在数据库中存储Model

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published