AIM: Я пытаюсь создать и запустить SQL запрос, один и тот же номер или время, когда у меня есть значения в моем списке Array, и incoorperate их в SQLСоздание SQL на основе списка массива
Список массива:// Это позволит получить имена всех членов команды и добавить их в список по массиву
ResultSet rs = name.executeQuery("SELECT name from TEAM_MEMBERS");
while (rs.next())
{
al.add(rs.getString("name"));
}
rs.close();
SQL для запуска для каждого члена команды. Обратите внимание, что члены команды будут меняться, поэтому это не может быть статичным.
ResultSet rs1 = name.executeQuery("SELECT sum(hours) FROM PROJECT_TIME WHERE DATE = '"+date+"' AND name = "+al+"");
while (rs1.next())
{
al1.add(rs1.getString(1));
}
rs1.close();
В идеале я хотел бы Переберите значения в массиве ал и как часть этого цикла вставить значения из массива Аль ИНТА он второй SQL, который будет затем добавить результат от этих запросов к другим AL1 массиву ,
Я думал, что одно решение будет добавлять счетчик al-массива к int, а затем использовать его для генерации моего цикла, а затем вставлять значения в цикле через значение X с базовым приращением ++ на нем. Однако это кажется немного грязным, и я думаю, что есть лучшее решение, о котором я не знаю.
Любые предложения помощи приветствуются.
Cheers.
Первый uggestion: читайте больше о реляционных базах данных и отношениях в таблице с использованием внешнего ключа, вы сэкономите много времени, имея ключ для объединения этих таблиц вместо столбца «name». Второе предложение: вы можете использовать один запрос для получения желаемых данных с помощью предложений 'JOIN'.Третье предложение: ** никогда не передавать параметры с помощью конкатенации «String», вместо этого используйте «PreparedStatement», чтобы предотвратить атаки [SQL Injection] (http://en.wikipedia.org/wiki/SQL_injection). –
Thats для предложений Луиджи. Мой SQL невелик, следовательно, вопрос, не знаете ли вы, как я буду структурировать команду JOIN? – Rhys
Ответ предоставлен, показывая основной пример об этом и дополнительное предложение. –