我需要检查db中是否存在用户名。如果它存在,我说已经存在..如果不是我在数据库中插入

时间:2013-09-12 05:56:23

标签: java mysql

我需要检查db中是否存在用户名。如果它存在我应该说已经存在..如果我不应该插入db 代码如下:

ResultSet rs=preparedstatement.executeQuery("select *from re where username='"+unt.getText()+"';");  
    if(rs!=null){
     while(rs.next()){
preparedstatement.executeQuery("select *from re where username="+unt.getText()+";");
             }
     lusn=new JLabel("User Already Exists");  
    }
    else{
    preparedstatement.execute("insert into re values('"+nt.getText()+"','"+unt.getText()+"','"+pas.getText()+"','"+add.getText()+"','"+mail.getText()+"','"+ph.getText()+"');");
    preparedstatement.executeUpdate();
    }

请帮助我 提前谢谢

1 个答案:

答案 0 :(得分:0)

您的代码完全未格式化。首先正确格式化。

其次,您要检查rs.next()以查看是否存在行,而不是`rs!= null'。您根本不想循环行,只需确定是否已存在行,因此代码中不应存在任何循环 - 只需一个IF语句。

最后,您要使用?占位符&分配参数值 - 不要在SQL字符串中构建参数,这非常容易引用错误& SQL注入安全攻击。