SQLite не будет готовить запрос при доступе к базе данных в Xcode
Я начинающий разработчик iPhone, пытающийся извлечь информацию из базы данных sqlite в Xcode 4.3. Моя база данных (которая называется DB_Info.sqlite) находится в том же каталоге, что и мои файлы .h и .m, и я также перетащил базу данных в раздел папок на левой панели в Xcode.
Не могли бы вы быстро взглянуть на мой код и сообщить мне, где моя ошибка? Я использовал NSLogs, чтобы определить, где возникает проблема, в самом последнем операторе if, и это написано в комментариях. Огромное спасибо заранее!
#import <sqlite3.h>
@implementation Player
{
sqlite3 *DB_Info;
NSString *databasePath;
NSString *docsDir;
NSArray *dirPaths;
}
-(Player*)createPlayer:(NSString*)playerName
{
dirPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
docsDir = [dirPaths objectAtIndex:0];
databasePath = [[NSString alloc] initWithString: [docsDir stringByAppendingPathComponent: @"DB_Info.sqlite"]];
const char *dbpath = [databasePath UTF8String];
sqlite3_stmt *statement;
if (sqlite3_open(dbpath, &DB_Info) == SQLITE_OK) { //works fine
NSString *querySQL = [NSString stringWithFormat: @"SELECT * FROM playerlist WHERE fullName=\"%@\"", playerName];
const char *query_stmt = [querySQL UTF8String];
if (sqlite3_prepare_v2(DB_Info, query_stmt, -1, &statement, NULL) == SQLITE_OK) { //PROBLEM: This is where the problem is, and the if statement never goes through
//....rest of code here
} else {
NSLog(@"Error");
}
}