一、数据库的升级
FMDB的数据迁移用FMDBMigrationManager这个工具类,FMDBMigrationManager 是与FMDB结合使用的一个第三方类库,可以记录数据库版本号并对数据库进行数据库升级等操作。
1、FMDB数据库升级有二种方式:
第一种、添加文件的方式进行记录版本和升级操作,先关联FMDBMigrationManager,再创建数据库升级文件,最后升级。
第二种、使用自定义类的形式进行迁移。先关联FMDBMigrationManager,再创建自定义类,并且遵循FMDBMigrationManager协议,最后把创建的自定义的类型加入到FMDBMigrationManager中,升级。
使用FMDBMigrationManager去
注意:上述两种数据库的升级方式都需要自己写sql语句。这就意味着,你需要熟练使用sql命令。
第一种:数据库升级的步骤:
1、集成FMDBMigrationManager
可以使用cocoapods或者手动集成
2、将要升级的的数据库和FMDBMigrationManager关联起来
注意:oldPath 要升级数据库的路径
执行了上面的代码以后,会发现多了一个 schema_migrations的表。
这个表是用来存储版本号的,现在表中的版本号(version)为0 ,rowid是升级文件“_”前面的数字。
注意:
下面这句代码是升级数据库的主要代码
UINT64_MAX 表示升级到最高版本
FMDB的数据迁移用FMDBMigrationManager这个工具类,FMDBMigrationManager 是与FMDB结合使用的一个第三方类库,可以记录数据库版本号并对数据库进行数据库升级等操作。
1、FMDB数据库升级有二种方式:
第一种、添加文件的方式进行记录版本和升级操作,先关联FMDBMigrationManager,再创建数据库升级文件,最后升级。
第二种、使用自定义类的形式进行迁移。先关联FMDBMigrationManager,再创建自定义类,并且遵循FMDBMigrationManager协议,最后把创建的自定义的类型加入到FMDBMigrationManager中,升级。
使用FMDBMigrationManager去
注意:上述两种数据库的升级方式都需要自己写sql语句。这就意味着,你需要熟练使用sql命令。
第一种:数据库升级的步骤:
1、集成FMDBMigrationManager
可以使用cocoapods或者手动集成
2、将要升级的的数据库和FMDBMigrationManager关联起来
注意:oldPath 要升级数据库的路径
FMDBMigrationManager * manager=[FMDBMigrationManager managerWithDatabaseAtPath:oldPath migrationsBundle:[NSBundle mainBundle]];
BOOL resultState=NO;
NSError * error=nil;
if (!manager.hasMigrationsTable) {
resultState=[manager createMigrationsTable:&;error];
}
执行了上面的代码以后,会发现多了一个 schema_migrations的表。
这个表是用来存储版本号的,现在表中的版本号(version)为0 ,rowid是升级文件“_”前面的数字。
注意:
下面这句代码是升级数据库的主要代码
UINT64_MAX 表示升级到最高版本