做项目时用的是FMDB进行SQLite3的数据库管理,在使用过程中会用到:
+ (instancetype)databaseWithPath:(NSString*)aPath;
来进行FMDatabase实例的初始化。根据文档说明,如果aPath没有响应的数据库文件(eg:.db文件),那么这个函数会自动创建,如果存在,也不会重复创建。在项目里我指定了aPath为:
../Document/Maketion/make.db
可是数据库文件一直无法创建成功。后来尝试:
1、先用NSFileManager创建目录:
../Document/Maketion
2、然后再使用databaseWithPath函数传入aPath:
../Document/Maketion/make.db
这次数据库文件自动创建成功。
因此猜想:databaseWithPath只能创建文件,而不能连Directory和文件一起创建,因此Directory的创建要单独进行(本例中的Maketion),之后调用databaseWithPath即可让其自动创建响应的数据库文件。
本文出自 “Layne的学习园地” 博客,请务必保留此出处http://laynestone.blog.51cto.com/9459455/1792635
原文地址:http://laynestone.blog.51cto.com/9459455/1792635