0

簡単にするために、「connection」というテーブルを持つデータベースがあります。たとえば、「rowName」という列が1つしかない場合とします。ここで、rowName=a;の行を追加するとします。ここで、rowName = qの行を追加し、最後にrowName = wの行を追加します(文字は完全にランダムです)。今、私は次のステートメントで結果をイライラさせます:

    NSString * queryStatements = [NSString stringWithFormat:@"SELECT rowName,  FROM tableName"];

コードを使用する:

NSMutableArray * rows = [[NSMutableArray alloc] init]; //create a new array
sqlite3_stmt * statement;
    if(sqlite3_prepare_v2(databaseHandle, [queryStatements UTF8String], -1, &statement, NULL) == SQLITE_OK){
        while (sqlite3_step(statement) == SQLITE_ROW){
           NSString * rowName = [NSString stringWithUTF8String : (char*) sqlite_column_text(statement, 1)];
[rows addObject : connection];
} sqlite3_finalize(statement_;
}

配列の行で、インデックス0のオブジェクトはrowName = a、インデックス1のrowName = q、インデックス2のrowName = wになりますか?それともランダムですか?ランダムではないようにする方法はありますか?

また、行を削除した場合、他の行の順序に影響はありますか?

4

1 に答える 1

3

データベースのソート順に依存しないでください。必要な場合は必ず指定してください。

SELECT rowName FROM tableName order by rowName

rowNameでソートされたデータを提供します。別の順序が必要な場合は、別の列が必要です。

必要に応じて、NSArrayを並べ替えることもできます。

どのような並べ替え順序をお探しですか?

于 2012-08-05T14:40:08.223 に答える