Я выполняю простой запрос «выбор» в цикле Java, как показано ниже. Размер Списка может увеличиваться до 10000+. Как я могу улучшить скорость запроса? Любой пример или совет приветствуются. Благодарю.
Обратите внимание, что мне нужно получить все данные в каждом столбце этой таблицы, поэтому используется звездочка (*).
List<String> valueList = ....
Connection conn = null;
PreparedStatement ps = null;
ResultSet rs = null;
try {
DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
conn = DriverManager.getConnection(dbURL, dbUsername, dbPassword);
for (int m = 0; m < valueList.size() ; m++) {
String sql = "SELECT * FROM WORKSHEET WHERE " + sheetId + " = '" +
valueList.get(m) + "'";
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
// retreive data....
}
}
Изменить: В конце концов, есть несколько способов ускорить этот запрос. Я использую второй способ, так как он предотвращает в будущем ошибку ORA-04031.