JLDatabase 0.2.0

JLDatabase 0.2.0

lip 维护。



  • lzkkk

JLDatabase

CI Status Version License Platform

示例

要运行示例项目,请克隆仓库,然后首先在 Example 目录中运行 pod install

要求

安装

JLDatabase 可通过 CocoaPods 获取。要安装它,简单地将以下行添加到 Podfile 中

pod 'JLDatabase'

LinkDB

示例

NSString *path = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) firstObject];

NSString *name = [path stringByAppendingPathComponent:@"test.db"];
    
[[JLDatabaseManager defaultManager] linkDatabase:name];

创建表

遵守JLDBManagerDelegate协议,并实现该方法

#pragma mark JLDBManageDelegate
//NOT NULL, UNIQUE etc
+ (NSDictionary *)columnExtras{
    return @{@"email":@"NOT NULL",
             @"name":@"NOT NULL"
             };
}

//is blob in db
+ (BOOL)isBlobColumn:(NSString *)name {
    return [name isEqualToString:@"blob"];
}

// ignore key not in column
+ (BOOL)isIgnoreColumn:(NSString *)name {
    return [name isEqualToString:@"ignore"];
}

// primary keys
+ (NSArray *)columnPrimaryKey {
    return @[@"email", @"name"];
}

应用

+ (NSArray *)queryAllData {
    return [[JLDatabaseManager defaultManager].database queryTableFromClazz:[JLTestEntity class] where:nil];
}

+ (BOOL)insertTestEntity:(JLTestEntity *)entity{
    return [[JLDatabaseManager defaultManager].database insertTableParameFromArray:@[entity] clazz:[JLTestEntity class] update:YES];
}

+ (BOOL)updateTestEntity:(JLTestEntity *)entity {
    return [[JLDatabaseManager defaultManager].database updateTableParameFromObj:entity where:[NSString stringWithFormat:@"WHERE email=%@ and  name =%@", entity.email, entity.name]];
}

+ (BOOL)deleteTestEntityByEmail:(NSString *)email name:(NSString *)name {
    return [[JLDatabaseManager defaultManager].database deleteTableParameFromClazz:[JLTestEntity class] where:[NSString stringWithFormat:@"WHERE email=%@ and name=%@", email, name]];
}

- (NSString *)description {
    return [NSString stringWithFormat:@"email: %@ \n name= %@ \n age: %zi \n newBee= %zi \n blob=%@ \n ignore=%@", self.email, self.name, self.age, self.newbee, self.blob, self.ignore];
}

使用它非常简单!

作者

lzkkk, [email protected]

许可证

JLDatabase遵循MIT许可证。查看LICENSE文件以获取更多信息。