「已注销」 2021-12-09 23:24 采纳率: 50%
浏览 68
已结题

为什么这里可以连接上数据库(数据库中有数据),可是在输入正确的用户名和密码后会一直查不到,并提示“该账户不存在,请重新输入!”这句话?

    b1.addActionListener(new ActionListener()
    {
        public void actionPerformed(ActionEvent e)
         {
            // TODO Auto-generated method stub
            String name=username.getText().trim();
            String mima=String.valueOf(password.getPassword()).trim();
            String drivername="com.microsoft.sqlserver.jdbc.SQLServerDriver";
            String dburl="jdbc:sqlserver://localhost:1433;DatabaseName=java";
            
            String userNam="sa";
            String userpwd="********";
            Connection con1=null;
            if(name.equals("")||mima.equals(""))//如果没输用户名或密码,则提示对不起,请输入用户名或密码
            {
                JOptionPane.showMessageDialog(jf,"对不起,请输入用户名或密码");
            }
            else//如果都有数据了就开始连接数据库验证
            {
                try
                {
                    Class.forName(drivername);
                    con1=DriverManager.getConnection(dburl,userNam,userpwd);
                    System.out.println("成功加载驱动,成功连接服务器");
                    Statement sta1=con1.createStatement();
                    if(sta1 != null ) {
                        System.out.println("获取成功");
                    }
                    String sql="select * from users where un='+name+'";
                    ResultSet res1=sta1.executeQuery(sql);

                    
                    System.out.println("执行完毕");
                    System.out.println("收工");

                    if(res1.next())//如果存在,就验证密码
                    {
                        if(res1.getString("pw").equals(mima))//如果密码正确就提示,反之
                        {
                            System.out.println(res1.getString("pw"));
                            JOptionPane.showMessageDialog(jf, "系统登录成功,恭喜你!");
                            jf.setVisible(false);
                        }

                        else
                        {
                            JOptionPane.showMessageDialog(jf,"密码错误,请重新输入!");
                        }
                    }

                    else//如果没有查找到用户名就提示
                    {
                        JOptionPane.showMessageDialog(jf,"该账户不存在,请重新输入!");
                    }
    
                }

                catch(Exception ee)
                {

                }
            }
        }
        
    }
    );
  • 写回答

2条回答 默认 最新

  • 关注

    把sql放到数据库链接工具上执行,肯定没有查到数据

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月17日
  • 已采纳回答 12月9日
  • 创建了问题 12月9日

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘