2010-09-07 6 views
-1

J'ai une base de données que j'ai récemment convertie de MySQL en SQLite. J'ai un script PHP qui obtient une chaîne à partir d'une demande POST ou GET et recherche cette chaîne et renvoie une valeur dans cette ligne.Comment accéder à quelque chose à partir d'une base de données SQLite sur un iPhone?

<?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; 

?> 

C'est ce que j'utilise maintenant. Quelqu'un peut-il m'aider à le convertir en SQLite sur l'iPhone.

Ce code ne fonctionne pas.

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); 

    } 

Il ne soit pas passé le if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {

+1

Non, ce n'est pas un site «écrivez moi le code». Pourquoi ne commencez-vous pas à chercher ici sur Stack Overflow ou Google et essayez-le, puis publiez-le à nouveau si votre code ne fonctionne pas. –

+0

J'ai fait une recherche autour. J'ai mis à jour le message avec le code qui ne fonctionne pas. –

+0

Pouvez-vous inclure des erreurs plus spécifiques? Comme dans, que se passe-t-il quand il échoue? Est-ce une erreur d'exécution/de compilation? Est-ce une erreur de logique ou une erreur de syntaxe? Etc. –

Répondre

0

Essayez d'utiliser sqlite3_errmsg (sqlite3 *) pour obtenir un texte en langue anglaise décrivant l'erreur. Et je vous suggère d'utiliser FMDB (qui est obective-C encapsuleur pour SQLite C API).

Questions connexes