-2

我需要检查用户名是否存在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();
    }

请帮助我提前谢谢

4

1 回答 1

0

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

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

最后,你想用 ? 占位符和分配参数值——不要将参数构建到 SQL 字符串中,这很容易受到引用错误和 SQL 注入安全黑客的攻击。

于 2013-09-12T06:00:15.643 回答