Я не могу создать базу данных sqlite в каталоге моих документов. Вот код:Создать базу данных Sqlite в iOS
NSString *fileDir;
NSArray *dirPaths;
//Get the documents directory
dirPaths = NSSearchPathForDirectoriesInDomains(NSDemoApplicationDirectory, NSUserDomainMask, YES);
fileDir = [dirPaths objectAtIndex:0];
// Build the database path
databasePath = [[NSString alloc]initWithString:[fileDir stringByAppendingPathComponent:@"student.sql"]];
NSFileManager *fileMgr = [NSFileManager defaultManager];
if([fileMgr fileExistsAtPath:databasePath] == NO)
{
const char *dbPath = [databasePath UTF8String];
if (sqlite3_open(dbPath, &database) == SQLITE_OK)
{
char *errMsg;
const char *sql_stmt = "CREATE TABLE IF NOT EXISTS CONTACTS(ID INTEGER PRIMARY KEY , NAME TEXT, ADDRESS TEXT, MOBILE INTEGER)";
if (sqlite3_exec(database, sql_stmt, NULL, NULL, &errMsg) != SQLITE_OK) {
_status.text = @"Failed to create table";
}
sqlite3_close(database);
}
else
{
_status.text = @"Failed to open/create database";
}
}
У меня есть отлаживать код и обнаружил, что компилятор не будет при этом условии. sqlite3_open (база данных dbPath, &) == SQLITE_OK
Я не знаю, что я делаю неправильно. Любая помощь будет оценена ...
Спасибо,
Uh, какой код возврата * это * sqlite3_open возвращается? И что сообщает sqlite3_errmsg? –
(BTW, предполагая, что вы действительно «отлаживаете», чтобы узнать, где он сбой, компилятор не задействован.) –
Мне кажется, вам нужно изменить расширение файла i.e. student.sqlite. просто попробуйте – Kalpesh