0
A
回答
-1
1.Database更新
我有一个单一的数据库控制器 - VSDatabaseController在我最新的应用程序 - 即会谈通过FMDB SQLite的。 FMDB区分更新和查询。要更新数据库中的应用拨打电话:
-[VSDatabaseController runDatabaseBlockInTransaction:(VSDatabaseUpdateBlock)databaseBlock]
VSDatabaseUpdateBlock很简单:
typedef void (^VSDatabaseUpdateBlock)(FMDatabase *database);
runDatabaseBlockInTransaction也很简单:
- (void)runDatabaseBlockInTransaction:(VSDatabaseUpdateBlock)databaseBlock {
dispatch_async(self.serialDispatchQueue, ^{
@autoreleasepool {
[self beginTransaction];
databaseBlock(self.database);
[self endTransaction];
}
});
}
这里有一个调用来更新数据库的一个简单的例子: 全选全部
- (void)emptyTagsLookupTableForNote:(VSNote *)note {
NSString *uniqueID = note.uniqueID;
[self runDatabaseBlockInTransaction:^(FMDatabase *database) {
[database executeUpdate:
@"delete from tagsNotesLookup where noteUniqueID = ?;", uniqueID];
}];
}
[self.database executeUpdate:
@"CREATE INDEX if not exists noteUniqueIDIndex on tagsNotesLookup (noteUniqueID);"];
数据库中获取
要提取的对象,应用程序调用:
SELECT ALL
-[VSDatabaseController runFetchForClass:(Class)databaseObjectClass
fetchBlock:(VSDatabaseFetchBlock)fetchBlock
fetchResultsBlock:(VSDatabaseFetchResultsBlock)fetchResultsBlock];
These two lines do much of the work:
SELECT ALL
FMResultSet *resultSet = fetchBlock(self.database);
NSArray *fetchedObjects = [self databaseObjectsWithResultSet:resultSet
class:databaseObjectClass];
甲数据库提取使用FMDB返回一个FMResultSet。使用该结果集,您可以浏览并创建模型对象。在存储器
3.Keeping对象
FMResultSet *的resultSet = [self.database的executeQuery:@ “从some_table选择UNIQUEID”];
4.WEB的API
- (void)uploadNote:(VSNote *)note {
VSNoteAPICall *apiCall = [[VSNoteAPICall alloc] initWithNote:[note detachedCopy]];
[self enqueueAPICall:apiCall];
}
5.Handling的Web API返回值
VSNote *cachedNote = [self.mapTable objectForKey:downloadedNote.uniqueID];
6.Database迁移
[self.database executeUpdate:@"CREATE TABLE if not exists tags "
"(uniqueID TEXT UNIQUE, name TEXT, deleted INTEGER, deletedModificationDate DATE);"];
我希望,它会帮助你。
1
感谢您的支持 我已经找到答案:[database executeUpdate:@“vacuum”];
相关问题
- 1. 我如何在iOS中使用FM IN操作符与FMDB
- 2. 如何在FMDB查询中使用Like与文本iOS Swift 4?
- 3. 如何使用FMDB在iOS中使用整数参数查询SQlite?
- 4. 我如何在IOS dev中使用FMDB从SQLite中读取整行数据?
- 5. FMDB如何让iOS更简单?
- 6. 使用可变table'name在FMDB
- 7. 如何在iPad应用程序中使用FMDB作为框架?
- 8. 如何使用FMDB和cocoapods和swift?
- 9. 如何使用PostgreSQL执行真空?
- 10. IOS FMDB良好做法
- 11. iOS - FMDB数据库插入
- 12. FMDB不是构建iOS 6.1
- 13. 当在iOS 4.0上使用SQLite(FMDB)和线程时EXC_BAD_ACCESS
- 14. 如何在swift 3中使用现有的SQLite? (FMDB)
- 15. 如何在Swift中使用'FMDB/SQLCipher'进行加密和解密?
- 16. iOS sqlite/FMDB更新不起作用
- 17. 正确使用FMDB/Memory
- 18. 如何在iOS Objective-C代码中使用名称空间?
- 19. iOS FMDB多线程操作失败
- 20. iOS FMDB Sqlite包装。内存不足。
- 21. FMDB仅环取数据库IOS
- 22. FMDB ios没有这样的表
- 23. ios fmdb从文件加载db
- 24. 我如何删除使用fmdb在uitableviewcell中的数据库中的行
- 25. FMDB结果集包含空iphone
- 26. 我无法捕获FMDB空结果集
- 27. SQLite数据库永远为空(FMDB)
- 28. 如何使用prefillPhonenuber在IOS
- 29. 如何使用GCM iOS中
- 30. 如何在iOS中使用POST?