Skip to content

Commit 3e9e0bd

Browse files
committed
Update
1 parent 42bb5ac commit 3e9e0bd

File tree

3 files changed

+14
-10
lines changed

3 files changed

+14
-10
lines changed

SJDBMap/Category/SJDatabaseMap+Server.m

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -400,14 +400,17 @@ - (BOOL)sjInsertOrUpdateDataWithModels:(NSArray<id<SJDBMapUseProtocol>> *)models
400400
// 优先 插入自增主键类
401401
[hasAutoPrimaryKeyModelsSetM enumerateObjectsUsingBlock:^(id<SJDBMapUseProtocol> _Nonnull model, BOOL * _Nonnull stop) {
402402
if ( [model class] != uM.ownerCls ) uM = [self sjGetUnderstandingWithClass:[model class]];
403-
[self sjInsertOrUpdateDataWithModel:model uM:uM];
403+
result = [self sjInsertOrUpdateDataWithModel:model uM:uM];
404+
if ( !result ) *stop = YES;
404405
}];
405406

406-
// 插入 主键类
407-
[hasPrimaryKeyModelsSetM enumerateObjectsUsingBlock:^(id<SJDBMapUseProtocol> _Nonnull model, BOOL * _Nonnull stop) {
408-
if ( [model class] != uM.ownerCls ) uM = [self sjGetUnderstandingWithClass:[model class]];
409-
[self sjInsertOrUpdateDataWithModel:model uM:uM];
410-
}];
407+
if ( result ) {
408+
// 插入 主键类
409+
[hasPrimaryKeyModelsSetM enumerateObjectsUsingBlock:^(id<SJDBMapUseProtocol> _Nonnull model, BOOL * _Nonnull stop) {
410+
if ( [model class] != uM.ownerCls ) uM = [self sjGetUnderstandingWithClass:[model class]];
411+
[self sjInsertOrUpdateDataWithModel:model uM:uM];
412+
}];
413+
}
411414

412415
if ( enableTransaction ) [self _sjCommitTransaction];
413416
return result;
@@ -658,9 +661,10 @@ - (BOOL)_sjCreateTab:(Class)cls {
658661
_sjmystrcat(fieldSql, " ");
659662
_sjmystrcat(fieldSql, fieldType);
660663

661-
if ( NULL != strstr(sql, fieldSql) ) continue;
664+
if ( NULL != strstr(sql, fieldSql) ) {free(fieldSql); continue;}
662665

663666
_sjmystrcat(sql, fieldSql);
667+
free(fieldSql);
664668

665669
// 如果是自增主键
666670
if ( NULL != model.autoincrementPrimaryKey &&
@@ -920,7 +924,7 @@ - (BOOL)_sjAlterFields:(Class)cls fields:(NSArray<NSString *> *)fields {
920924
/*!
921925
* 获取类中相关的私有变量
922926
*/
923-
static NSMutableSet<NSString *> *_sjGetIvarNames(Class cls) {
927+
inline static NSMutableSet<NSString *> *_sjGetIvarNames(Class cls) {
924928
NSMutableSet<NSString *> *ivarListSetM = [NSMutableSet new];
925929
unsigned int outCount = 0;
926930
Ivar *ivarList = class_copyIvarList(cls, &outCount);
@@ -934,7 +938,6 @@ - (BOOL)_sjAlterFields:(Class)cls fields:(NSArray<NSString *> *)fields {
934938
return ivarListSetM;
935939
}
936940

937-
938941
@end
939942

940943
/*!

SJDBMap/SJDatabaseMap.m

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,7 @@ - (void)insertOrUpdateDataWithModels:(NSArray<id<SJDBMapUseProtocol>> *)models c
156156
__block BOOL result = YES;
157157
[modelsDict enumerateKeysAndObjectsUsingBlock:^(NSString * _Nonnull tabName, NSArray<id> * _Nonnull modelsArr, BOOL * _Nonnull stop) {
158158
result = [self sjInsertOrUpdateDataWithModels:modelsArr enableTransaction:YES];
159+
if ( !result ) *stop = YES;
159160
}];
160161
dispatch_async(dispatch_get_main_queue(), ^{
161162
if ( block ) block(result);

SJDBMapProject/ViewController.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ - (void)query {
198198
- (void)queryWithDict:(NSDictionary *)dict {
199199
[[SJDatabaseMap sharedServer] queryDataWithClass:[Person class] queryDict:dict completeCallBlock:^(NSArray<id<SJDBMapUseProtocol>> * _Nullable data) {
200200

201-
// query result
201+
// query result
202202
[data enumerateObjectsUsingBlock:^(id<SJDBMapUseProtocol> _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
203203
NSLog(@"%@", obj);
204204
}];

0 commit comments

Comments
 (0)