Как проверить, соответствует ли введенное значение значению в базе данных SQL?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как проверить, соответствует ли введенное значение значению в базе данных SQL?

Сообщение Anonymous »

У меня есть база данных с 7 строками и 4 столбцами в каждой. Я предлагаю пользователю ввести код, и мне нужно выполнить перекрестную ссылку на базу данных, чтобы проверить, соответствует ли введенный код одному из кодов в базе данных (первый столбец в каждой строке).
Сначала я проверял, оказался ли набор результатов нулевым, но это не сработало. Я пробовал if(rs.wasNull()), но, похоже, он так и не выполнился.
Есть ли у кого-нибудь совет, на что следует обратить внимание, чтобы решить мою проблему? Вот фрагмент кода, если он вообще поможет.
if(!rs.wasNull()) {
while(rs.next()) {
Products temp = new Products(rs.getString(1), rs.getString(2), rs.getDouble(3), rs.getBoolean(4));
productsList.add(temp);
// For testing purposes
//out.println(temp.toString());
request.setAttribute("productsList", productsList);
request.getRequestDispatcher("Scan.jsp").forward(request, response);
}
}

else if(rs.wasNull()) {
Products wrongCode = null;
productsList.add(wrongCode);
request.setAttribute("productsList", productsList);
request.getRequestDispatcher("Scan.jsp").forward(request, response);
}

РЕДАКТИРОВАТЬ: Теперь я знаю, что ResultSet никогда не возвращает значение null. Он вернет пустой набор результатов.
РЕДАКТИРОВАТЬ 2: Я написал этот метод для решения проблемы:
public boolean codeExists(int code) {
final String SELECT_QUERY = "SELECT * FROM productcatalogue WHERE code = ?";
try {

PreparedStatement statement = conn.prepareStatement(SELECT_QUERY); // Create query statement
statement.setInt(1, code);

ResultSet queryResult = statement.executeQuery();
if (!queryResult.next()) { // Check if code entered exists
return false; // Tells that the author doesn't exist
}
} catch (SQLException sqlException) {

sqlException.printStackTrace();

}
return true; //Otherwise the item exists
}


Подробнее здесь: https://stackoverflow.com/questions/492 ... l-database
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»