将文本字段值与数据库值进行比较

时间:2011-09-12 03:09:47

标签: java database jdbc

我需要帮助创建我的应用程序,我创建一个数据库并将其连接到我的应用程序我的数据库包含具有id,name等字段的manager表。当我在textfield中输入任何id时,它必须将textfield的值与数据库值进行比较,我该怎么做?

2 个答案:

答案 0 :(得分:1)

比较textField中的id,假设它是String,使用String#equalsIgnoreCase对照使用JDBC从数据库检索到的id的值,如here所示。如果你被困在任何地方,请告诉我 - 祝你好运!

答案 1 :(得分:1)

首先了解SQL。它是您应该与DB通信以检索和存储数据的语言。在这种特殊情况下,关键答案是SQL WHERE子句。

SELECT id, name FROM manager WHERE name = "somename"

或者如果您想选择多个值,例如名称和密码,请使用AND

SELECT id, name, password FROM manager WHERE name = "somename" AND password = MD5("somepass")

它会返回所有匹配的结果,可以是零或一个(如果没有正确的键,甚至更多)。

下一步是学习JDBC。它是一个Java API,使您能够使用Java代码执行SQL查询并从数据库中获取结果。在这种特殊情况下,您希望使用PreparedStatement在SQL查询中设置用户控制的值并执行它。

preparedStatement = connection.prepareStatement("SELECT id, name, password FROM manager WHERE username = ? AND password = MD5(?)");
preparedStatement.setString(1, username);
preparedStatement.setString(2, password);
resultSet = preparedStatement.executeQuery();
// ...

另见: