それは次のように構築されています:
StringBuilder sb = new StringBuilder(5000);
sb.append("SELECT user_id FROM ").append(DEF_USERS_TBL).append(" WHERE user_id='").append(phoneBook.get(0)).append('\'');
for (int i = 1; i < phoneBook.size(); i++)
{
sb.append(" OR user_id='").append(phoneBook.get(i)).append('\'');
}
sb.append(';');
try
{
Statement s = ...;
rs = s.executeQuery(sb.toString());
...
} catch ( ... ) {
...
}
MySQL バージョン > 5.0、innoDB の場合、これがストアド プロシージャであれば、パフォーマンス的には理にかなっていると聞きました。これを phonebook.size() の個々の SELECT クエリに変換すると、より高速になりますか (したがって、ストア プロシージャを実行できるようになります)。
タイ