Как получить доступ к чему-либо из базы данных SQLite на iPhone? - PullRequest
0 голосов
/ 08 сентября 2010

У меня есть база данных, которую я недавно преобразовал из MySQL в SQLite. У меня есть скрипт PHP, который получает строку из запроса POST или GET, ищет эту строку и возвращает значение в этой строке.

<?php
require_once('../config.php');

$newNumber = $_REQUEST['new'] ;

$tbl_name = 'roomNumbers';

$sql="SELECT * FROM $tbl_name WHERE new='$newNumber'";

$result=mysql_query($sql) or die ('Error, cannot execute query');

    $data = mysql_query($sql);
    $info = mysql_fetch_array( $data );
    $oldNumber = $info['old'];

if($oldNumber == null) {$oldNumber = "Room Not Found";}
    echo $oldNumber;

?>

Это то, что я сейчас использую. Может кто-нибудь помочь мне преобразовать его в SQLite на iPhone.

Этот код не работает.

if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {
        NSLog(@"entered readRoomsFromDatabase if 1");
        // Setup the SQL Statement and compile it for faster access
        const char *sqlStatement = "SELECT * FROM 'roomNumbers' WHERE new='h13'";


        sqlite3_stmt *compiledStatement;

        if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
                    NSLog(@"entered readRoomsFromDatabase if 2");
            if(sqlite3_step(compiledStatement) == SQLITE_ROW) {
                        NSLog(@"entered readRoomsFromDatabase if 3");

                NSString *aName =[NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 0)];

                NSLog(aName);

            }
        }
        // Release the compiled statement from memory
        sqlite3_finalize(compiledStatement);

    }

Он не прошел if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {

1 Ответ

0 голосов
/ 08 сентября 2010

Попробуйте использовать sqlite3_errmsg (sqlite3 *), чтобы получить англоязычный текст, описывающий ошибку. И я бы посоветовал вам использовать FMDB (который является оболочкой obective-C для SQLite C API).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...