Java数据库随机显示

时间:2015-05-22 17:23:45

标签: java

private void Label_GenerateMouseClicked(java.awt.event.MouseEvent evt) {                                            
    // TODO add your handling code here:
    try{
        String sql = "select from Account ORDER BY RAND()";
        PreparedStatement st = con.prepareStatement(sql);
        ResultSet rs = st.executeQuery();

        if(rs.next()){
            TextField_Username.setText(rs.getString("EMAIL"));
            TextField_Password.setText(rs.getString("PASSWORD"));
        }
    }catch(Exception e){
        System.out.println("Cannot generate.");
    }
}                                           

此代码一直在捕捉错误,我无法弄清楚原因。 im gettign error java.lang.NullPointerException。请帮忙

3 个答案:

答案 0 :(得分:2)

NVM GUYS我把它弄清楚了。我没有运行我的连接功能。为麻烦而烦恼。

答案 1 :(得分:0)

试试这个:

String sql = "select EMAIL,PASSWORD from Account ORDER BY RAND()";
        PreparedStatement st = con.prepareStatement(sql);
        ResultSet rs = st.executeQuery();

        if(rs.next()){
            TextField_Username.setText(rs.getString("EMAIL"));
            TextField_Password.setText(rs.getString("PASSWORD"));
        }

答案 2 :(得分:0)

首先,您的SQL语句不正确。而不是

"select from Account ORDER BY RAND()"

应该是

"select Email, Password from Account ORDER BY RAND()"

进行选择时,您需要指定要选择的列,或使用*指定所有表。但是,生产SQL代码永远不应该执行SELECT *;您应该只指定实际使用的列,以避免泄漏数据和浪费时间。

另外,我希望Password列的数据已加密......