Я работаю над приложением для Android, где пользователь отправляет запросы в базу данных, а кортежи отображаются в виде Gridview
.
Ниже вы можете увидеть код функции, в которой выполняется запроси кортежи извлекаются.Возвращенное значение ArrayList
используется в отображаемом адаптере GridView
.
public ArrayList<String> getTuples(String query){
String z;
String tmp;
ArrayList<String> tuples= new ArrayList<String>();
try {
Connection con = this.CONN();
if (con == null) {
z = "Please check your internet connection";
} else {
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
while(rs.next()){
tmp = rs.getString(1);
tuples.add(tmp);
}
}
}
catch (Exception ex){
z = "Exceptions"+ex;
}
return tuples;
}
Сначала должны быть извлечены все кортежи ResultSet rs = stmt.executeQuery(query);
, а затем отображено.
Проблема в том, что состоит в том, что, поскольку таблицы состоят из кортежей 300–800 КБ, некоторые запросы (например, СОЕДИНЕНИЕ двух таблиц) занимают много времени.
Существует ли способ отображения каждого кортежа? НА ПОЛЕТЕ (как только он прибудет)?
Большое спасибо.