如果没有可能的结果,如何检测从MySQL发送的空结果集。
只需检查是否ResultSet#next()
返回true。例如
public boolean exist(String username, String password) throws SQLException {
Connection connection = null;
PreparedStatement statement = null;
ResultSet resultSet = null;
boolean exist = false;
try {
connection = database.getConnection();
statement = connection.prepareStatement("SELECT id FROM user WHERE username = ? AND password = MD5(?)");
statement.setString(1, username);
statement.setString(2, password);
resultSet = statement.executeQuery();
exist = resultSet.next();
} finally {
close(resultSet, statement, connection);
}
return exist;
}
您可以如下使用
if (userDAO.exist(username, password)) {
// Proceed with login?
} else {
// Show error?
}
另外,您也可以让它返回一个完全错误的消息,User
或者null
如果没有,则返回完全错误消息。例如
public User find(String username, String password) throws SQLException {
Connection connection = null;
PreparedStatement statement = null;
ResultSet resultSet = null;
User user = null;
try {
connection = database.getConnection();
statement = connection.prepareStatement("SELECT id, username, email, dateOfBirth FROM user WHERE username = ? AND password = MD5(?)");
statement.setString(1, username);
statement.setString(2, password);
resultSet = statement.executeQuery();
if (resultSet.next()) {
user = new User(
resultSet.getLong("id"),
resultSet.getString("username"),
resultSet.getString("email"),
resultSet.getDate("dateOfBirth"));
}
} finally {
close(resultSet, statement, connection);
}
return user;
}
与
User user = userDAO.find(username, password);
if (user != null) {
// Proceed with login?
} else {
// Show error?
}
问题内容: 我在表中有一列,其中可能包含空值或空值。如何检查表中存在的行中的一列是空还是空? 问题答案: 这将选择is 或(空字符串)的所有行
问题内容: 我试图弄清楚如何检查一个字段是否为空或为空。我有这个 我需要添加额外的支票,例如 任何想法如何做到这一点? 问题答案: 无论使用 要么 如果只想检查而不是空字符串,则也可以使用或。但这不适用于空字符串。
问题内容: 我有以下表格及其关系。我将JSON数据存储在client_services表中。它们是使用MySQL查询来检索JSON值的任何方式,如下所示: 还是可以进一步规范化client_services表? 表: 表: 表: 表: 问题答案: 由于很多人都亲自问过我这个问题,所以我想我会再作一次修改。这是一个具有SELECT,Migration和View Creation的完整SQL的要点,
我如何检测超过某些配置的应用程序超时的GC(编辑或任何停滞),以便我可以记录警告(或动态延长超时)? 编辑:我不是在要求类似监控的替代方案或变通办法。我正在写一个库,我不能控制环境或设置。虽然我将清楚地说明库的用户必须设置适当的超时时间,但我仍然希望人们能够忽略这一点,在几年后更改jvm堆设置,并忘记增加超时时间。如果我可以在库日志中警告可能的暂停超过配置的超时,支持将会更简单。它不一定是完美的,
本文向大家介绍如何检测MySQL中是否存在表?,包括了如何检测MySQL中是否存在表?的使用技巧和注意事项,需要的朋友参考一下 要检测表的存在,请使用INFORMATION_SCHEMA.TABLES的概念。以下是语法- 要了解上述语法,让我们创建一个表- 这是检测数据库中是否存在表的查询- 这将产生以下输出-
下面的代码引发NullPointerException。即使有