我是 IOS 开发的新手,所以我正在关注这个
正如本教程中提到的,我使用 SQLITE 命令行创建了我的数据库,创建了我的表,然后通过将数据库添加到 Supporting Files 文件夹将其导入到我的 XCode 4.6 项目中。
我只想用数据填充表,所以我有一个函数,它首先找到我的数据库并将其复制到 Documents 文件夹(如果不存在,已经存在):
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *writableDBPath = [documentsDirectory stringByAppendingPathComponent:@"Customers.db"];
FMDatabase* db = [FMDatabase databaseWithPath:writableDBPath];
这很好用,因为 writebleDBPath 指向 Customers.db 所在的实际路径(在项目的 Documents 文件夹中)
现在我打开数据库并尝试添加一条新记录:
[db open];
BOOL success = [db executeUpdate:@"INSERT INTO customers (firstname,lastname) VALUES (?,?);",[patient.firstName UTF8String],[patient.secondName UTF8String], nil];
[db close];
但成功的价值始终是“否”。
我包括用于创建 sqlite 数据库的代码:
CREATE TABLE customers(id integer primary key, firstname varchar(30), lastname varchar(30))
我错过了什么?