1

C++ の文字列配列としてアイテムのリストがあります。ブラックリストに登録された文字列を含む sqlite3 データベースもあります。ここで、アイテムのリストを使用して、0 または 1 でマークし、ブラックリストに登録されているかどうかを通知する必要があります。「Select * from ITEMS_TABLE WHERE item = string[i]」を使用して 1 つずつ検索することもできますが、時間がかかります。データベースからブラックリストを取得して、リストでそれらを探すこともできます。しかし、リスト内のどのアイテムがブラックリストに載っているかを効率的に調べる方法はありますか?

次の構造があるとしましょう

struct item 
{ 
    char name[MAX_NAME_LEN]; 
    bool isBlacklisted; 
};

次に、これらの構造の配列を使用して、それらのいずれかがブラックリストに登録されているかどうかを確認します。したがって、エントリがデータベースで見つかった場合は、isBlacklisted フラグを true にする必要があります。選択アプローチを使用すると、ブラックリストに登録されたアイテムのリストが返されます。しかし、文字列比較を使用して配列内でそれらを見つける必要があります。効率的な方法はありますか。データベースはそのような機能を提供しますか?

ありがとう、よろしく、マイク。

4

1 に答える 1