Java-检查ID是否已存在于数据库中

时间:2018-07-03 20:20:44

标签: java database

我试图在ButtonClick之后在JTextField中使用名称和ID登录。首次登录后,所有用户都存储在数据库中。 我想做的是:如果用户已经存储在数据库中,我想显示该消息(“欢迎回来”),但是我现在得到的是“键“ PRIMARY”的重复条目“ 11”我想“忽略”,因为如果用户存储在数据库中,则应该可以再次登录并继续下一页。如果用户是新用户,我将显示一个JOptionPane (“欢迎新用户”)

到目前为止我尝试过的是: JOptionPane.showMessageDialog(null,“已经存在”);                         }

                String query1 = "SELECT * FROM user";
                PreparedStatement pst1 = con.prepareStatement(query1);
                ResultSet r1= pst1.executeQuery();
            if(....)JOptionPane.showMessageDialog(null,"...");} 
                    else if(r1.next()) {
                        if (r1.getString("ID").equals(txtFieldID.getText())) {

事先谢谢。

1 个答案:

答案 0 :(得分:1)

您应该首先执行查询以验证ID是否已存在于数据库中,因此在这种情况下,您只会得到一个结果:SELECT COUNT(ID) FROM USERS WHERE ID = ?。如果该查询的结果返回的值大于0,则表明该用户存在,并且您显示消息。

您不应该查询整个表,然后对每一行进行迭代以进行这种验证。