SQLite no preparará la consulta al acceder a la base de datos en Xcode

Soy un desarrollador de iPhone para principiantes que intenta sacar información de una base de datos sqlite en Xcode 4.3. Tengo mi base de datos (que se llama DB_Info.sqlite) en el mismo directorio que mis archivos .h y .m, y también arrastré la base de datos a la sección de carpetas en la barra izquierda de Xcode.

¿Podría por favor echar un vistazo rápido a mi código y dejarme saber dónde está mi error? He usado NSLogs para identificar dónde ocurre el problema, al final de la declaración if, y está escrito en comentarios. ¡Muchas gracias de antemano!

#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");
        }
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta