Я новичок в использовании sqlite, поэтому я, возможно, пропустил что-то основное.sqlite на iphone может открыть db, но не готовить заявления
Я создал базу данных и скопировал ее в каталог документа моего приложения. Я могу открыть его, но когда я звоню в sqlite3_prepare_v2, я получаю SQLITE_ERROR, «Ошибка SQL или отсутствующая база данных».
вот мой код:
sqlite3 *database;
if(sqlite3_open([dbPath UTF8String], &database) == SQLITE_OK)
{
sqlite3_stmt *compiledStatement;
NSString *sqlStatement = @"select * from dbname";
int result = sqlite3_prepare_v2(database, [sqlStatement UTF8String], -1, &compiledStatement, nil);
...
}
тот же оператор SQL работает в терминале.
Я нашел этот вопрос в нескольких местах либо без ответов, либо с решениями, которые не устраняют мою проблему. Я надеюсь, что кто-то здесь сможет помочь. Благодарю.
Edit:
Понял работать с помощью диспетчера SQLite Firefox, была проблема с файлом базы данных, созданной с помощью терминала.
Что 'держать dbPath'? –
dbPath - это путь к файлу базы данных sqlite, который находится в области документов приложения. – jan