Я пытаюсь проверить, существует ли имя пользователя в моей базе данных - или нет. Я использовал следующий лог c, и хотя ошибка появляется, но он также сохраняет данные пользователя в базе данных.
Обычно, если появляется ошибка, процесс не должен выполняться, если только ошибка решена.
Но он по-прежнему сохраняет имя и прочее. И да, я пытаюсь применить проверки (что у меня не очень хорошо получается)
String checkName="SELECT * FROM administrator WHERE name1='"+name+"'";
Pstat = con.prepareStatement(checkName);
rs = Pstat.executeQuery();
if(rs.next())
{
nameTextField.setText(null);
JOptionPane.showMessageDialog(null,"Please Enter Different Name","Error", JOptionPane.ERROR_MESSAGE);
}
Здесь Pstat
- это экземпляр PreparedStatement
, con
- экземпляр Connection
, а rs
- это экземпляр ResultSet
.
adminstrator
- это имя таблицы, а name1
- имя столбца.
Извините, я недавно перешел с c ++ на Java. Не очень разбираюсь в чеках.
Я получаю сообщение об ошибке
Пожалуйста, введите другое имя
, но когда я нажимаю ОК , У меня появляется другое всплывающее окно
Ваши данные введены
(это всплывающее окно создано пользователем, поэтому не беспокойтесь, как java стал таким умным в отношении ввода данных )
И да, я немного знаю о next()
. Но я не мог понять это в заявлении if
....
Может ли кто-нибудь сказать мне, что происходит в конце этого if
утверждения?