123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- //
- // FIDDataBaseModel.h
- // FFDB
- //
- // Created by Fidetro on 2017/3/22.
- // Copyright © 2017年 Fidetro. All rights reserved.
- //
- // https://github.com/Fidetro/FFDB
- #import <Foundation/Foundation.h>
- #import <FMDB/FMDB.h>
- #import "FFDBManager.h"
- extern NSString *const kDatabaseHeadname;
- @interface FFDataBaseModel : NSObject
- /** primary id,use to update **/
- @property(nonatomic,strong,readonly) NSString *primaryID;
- /**
- select all object from class
-
- @return class objects
- */
- + (NSArray <__kindof FFDataBaseModel *>*)selectFromClassAllObject;
- /**
- select object by format
-
- @param format Like sqlstatement rule, example: where name = 'fidetro' and age = '21'
- @return class objects
- */
- + (NSArray <__kindof FFDataBaseModel *>*)selectFromClassPredicateWithFormat:(NSString *)format;
- /**
- delete all object from class
-
- @return delete successfully
- */
- + (BOOL)deleteFromClassAllObject;
- /**
- delete object
- @return delete successfully
- */
- - (BOOL)deleteObject;
- /**
- delete object by format
-
- @param format Like sqlstatement rule, example: where name = 'fidetro' and age = '21'
- @return delete successfully
- */
- + (BOOL)deleteFromClassPredicateWithFormat:(NSString *)format;
- /**
- insert object
-
- @return insert successfully
- */
- - (BOOL)insertObject;
- /**
- update object by format
- @param format Like sqlstatement rule, example: set age = '24' where name = 'fidetro'
- @return update successfully
- */
- + (BOOL)updateFromClassPredicateWithFormat:(NSString *)format;
- /**
- update object for all columns
- @return update successfully
- */
- - (BOOL)updateObject;
- /**
- update object by columns
-
- @param columns Need to update columns
- @return update successfully
- */
- - (BOOL)updateObjectSetColumns:(NSArray *)columns;
- /**
- find primaryID will update object,if not insert
- */
- - (BOOL)upsert;
- /**
- find columns will update object,if not insert
- */
- - (BOOL)upsertWithColumns:(NSArray *)columns;
- /**
- update object by KVO
-
- @param update_block You can set object property into update_block
- */
- - (void)updateObjectWithBlock:(void(^)())update_block;
- @end
|