Ваш код имеет некоторые проблемы:
- Сначала вы должны использовать
PreparedStatement
, потому что вы используете ?
заполнитель
- Вы не должны использовать while, потому что ваш запрос возвращает только один результат
Вместо этого ваш код должен выглядеть так:
String query= "Select count(*) as cnt from user where username=? OR email=? OR phone=?";
try (PreparedStatement pstmt = conn.prepareStatement(query);) {
pstmt.setString(1, username);
pstmt.setString(2, email);
pstmt.setString(3, phone);
ResultSet rs1 = pstmt.executeQuery();
long c = 0;
if(rs1.next()){
c = rs1.getLong("cnt");
}
}