そのため、SQLite でクエリを直接実行すると、期待どおりの順序で値が返されます。しかし、iOS アプリで表示すると、値が昇順で並べ替えられますが、これは望ましくありません。この問題を乗り越えるのを手伝ってくれる人はいますか?!
前もって感謝します!!:-)
クエリに「order by」ステートメントがありますか? おそらく、この方法で、必要に応じて結果を取得するためのコントロールが得られます。
あなたが達成しようとしていることは問題ではありません:
select columname from yourtable order by asc
SQLクエリを作成します。結果を順序付けしたい場合、おそらくこのascは結果をアルファベット順にソートするように見えます
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);
}