-1

そのため、SQLite でクエリを直接実行すると、期待どおりの順序で値が返されます。しかし、iOS アプリで表示すると、値が昇順で並べ替えられますが、これは望ましくありません。この問題を乗り越えるのを手伝ってくれる人はいますか?!

前もって感謝します!!:-)

4

2 に答える 2

1

クエリに「order by」ステートメントがありますか? おそらく、この方法で、必要に応じて結果を取得するためのコントロールが得られます。

于 2012-07-24T07:37:27.813 に答える
0

あなたが達成しようとしていることは問題ではありません:

  1. select columname from yourtable order by ascSQLクエリを作成します。結果を順序付けしたい場合、おそらくこのascは結果をアルファベット順にソートするように見えます

  2. SQL クエリの結果を 1 行ずつ読み取ります。そのためのコード スニペットを次に示します。

    NSString *SQLQuery  = @"your SQL query here" 
    
    // The SQL statement that you plan on executing against the database 
    const char *sql =  [SQLQuery UTF8String];
    
    // The SQLite statement object that will hold your result set 
    sqlite3_stmt *statement;
    
    // Prepare the statement to compile the SQL query into byte-code
    int sqlResult = sqlite3_prepare_v2(database, sql, -1, &statement, NULL);
    
    
    if (sqlResult== SQLITE_OK) {
    
        while (sqlite3_step(statement) == SQLITE_ROW) {
    
        // feed the result in a mutable array here
        // e.g [yourmutablearray addObj: yourObj];
    
        }
    
        // Finalize the statement to release its resources
        sqlite3_finalize(statement);
    }
    else // catch up any possible issue here
    {
        NSLog(@"Problem excuting SQL statement on the Database:"); 
        NSLog(@"%d",sqlResult);
    }
    
于 2012-07-24T07:42:29.853 に答える