我尝试复制username
列中的条目,但结果总是在else
语句中,即数据已成功插入表中,不应基于{{1声明。顺便说一下if
。
这是代码:
String value1=username1.getText();
答案 0 :(得分:1)
您只需创建SQL字符串并从不运行它(相反,您将其与用户名进行比较,该用户名始终为false)。
您应该实际执行它并检查结果。 例如。 (为简洁起见,省略了错误处理和资源清理):
Connection conn = // Connect to the database...
PreparedStatement ps =
conn.prepareStatement("SELECT username FROM login where username = ?";
ps.setString(1, value1);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
JOptionPane.showMessageDialog
(null,"username is already existed! please create new username.");
}
答案 1 :(得分:0)
sq将永远不会等于value1:
String sq = "SELECT username FROM login where username = '"+value1+"'";
您缺少的是sq String的数据库请求。
答案 2 :(得分:0)
sq
包含查询(sql代码)
String sq = "SELECT username FROM login where username = '"+value1+"'";
value1
包含用户名值(例如“user1”)。所以
sq.equals(value1)
总是假的
"SELECT username FROM login where username = '"+value1+"'" != value1
答案 3 :(得分:0)
字符串基础:
String sq = "Something in double quotes"
将Something
分配给sq。
并且
String value1=username1.getText();
可以获得一些其他字符串,例如" root"
sq.equals(value1)
现在String类equals()
方法检查两个字符串的内容(sq和value1)。
如果不等于返回false,则会发生这种情况。
现在如何实现目标?人们已经回答了检查。
我建议你自己study