FMDB小demo
**FMDB小demo**在iOS应用开发中,数据库管理是一个重要的环节,特别是在处理大量数据或者需要持久化存储用户数据时。FMDB是一个基于SQLite的Objective-C数据库管理库,由Facebook开源,它为开发者提供了简单易用的接口来操作SQLite数据库。这个"FMDB小demo"是针对初学者设计的,旨在帮助他们快速理解和掌握FMDB的基本用法。我们需要在项目中引入FMDB库。可以通过CocoaPods或手动导入的方式。如果使用CocoaPods,只需在Podfile中添加`pod 'FMDB'`,然后执行`pod install`命令。手动导入则需要下载FMDB源代码,并将`FMDB`目录拖入项目中。 1. **创建数据库通常在应用启动时进行,可以使用`FMDatabaseQueue`类的`inDatabase`或`inTransaction`方法。例如: ```objc FMDatabaseQueue *queue = [FMDatabaseQueue databaseQueueWithPath:@"myDatabase.db"]; [queue inDatabase:^(FMDatabase *db) { if (![db open]) { NSLog(@"Failed to open database"); } else { //如果数据库不存在,会自动创建[db executeUpdate:@"CREATE TABLE IF NOT EXISTS myTable (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT)"]; } }]; ``` 2. **插入数据使用`executeUpdate:`方法,参数是SQL语句。例如: ```objc NSString *insertSQL = @"INSERT INTO myTable (name) VALUES (?)"; [queue inDatabase:^(FMDatabase *db) { [db executeUpdate:insertSQL, @"John Doe"]; }]; ``` 3. **查询数据使用`executeQuery:`方法,返回一个`FMResultSet`对象,通过迭代遍历结果集。例如: ```objc NSString *selectSQL = @"SELECT * FROM myTable"; [queue inDatabase:^(FMDatabase *db) { FMResultSet *results = [db executeQuery:selectSQL]; while ([results next]) { int id = [results intForColumnIndex:0]; NSString *name = [results stringForColumn:@"name"]; NSLog(@"ID: %@, Name: %@", @(id), name); } }]; ``` 4. **更新数据同样使用`executeUpdate:`方法,例如: ```objc NSString *updateSQL = @"UPDATE myTable SET name = ? WHERE id = ?"; [queue inDatabase:^(FMDatabase *db) { [db executeUpdate:updateSQL, @"Jane Doe", @(1)]; }]; ``` 5. **删除数据使用`executeUpdate:`方法,例如: ```objc NSString *deleteSQL = @"DELETE FROM myTable WHERE id = ?"; [queue inDatabase:^(FMDatabase *db) { [db executeUpdate:deleteSQL, @(1)]; }]; ``` 6. **事务处理** FMDB提供了事务处理功能,可以确保一系列操作的原子性。在`inTransaction`回调中,如果发生错误,可以调用`rollback`,否则调用`commit`。例如: ```objc [queue inTransaction:^(FMDatabase *db, BOOL *rollback) { if (![db executeUpdate:@"BEGIN"]) return NO; //执行一系列操作... if (/*无错误*/) { *rollback = NO; //提交事务} else { *rollback = YES; //回滚事务} }]; ``` 7. **错误处理** FMDatabase提供了`lastErrorMessage`和`hadError`属性来检查和获取操作过程中产生的错误。通过这个"FMDB小demo",你可以了解到如何使用FMDB进行基本的数据库操作,包括创建表、插入数据、查询数据、更新数据和删除数据。同时,了解如何处理事务和错误,这些都是在实际项目中必不可少的技能。继续深入学习,你可以探索更高级的特性,如预编译语句、批量操作以及更复杂的查询。
FMDB小demo
预估大小:101个文件
1c69ceb2e61d0853a98177f0d1c874007a1817
982B
16e99a04ed0125682d5be46946ddfb56f811c8
163B
5f32c2c61bfb2f739d05235cfb4e19d2125cf4
2KB
4092481214d9b689477b6bae8aa42f6e433990
343B
37597b848a1890bb30ba0ff4102f8107cafdcb
61B
1c4e71201ec90b89a03815989835dd78e57763
188B
10b669f59766bf227be96465120c4f67617756
128B
14aead89165c917d2ef672e1602ca70e9ee4cf
3KB
57e727b6f6ea54b76ee68569cf3c14eccfc509
5KB
3f33c9c4d16eebd8625dddbf41eeb223330042
231B
115.24KB
文件大小:
评论区