为了账号安全,请及时绑定邮箱和手机立即绑定

Existing Employee no Added again问题使用java mysql

Existing Employee no Added again问题使用java mysql

森栏 2023-02-23 16:14:00
我正在创建一个简单的员工休假工资单系统。我在添加休假详细信息时遇到了问题。请假详细信息重复。我正在为在公司工作的所有员工输入休假信息。当新员工加入时,我向他们输入休假信息。现有员工也再次添加。我在下面显示屏幕截图图像。发生了什么离开桌子在此处输入图像描述登记表在此处输入图像描述当新员工加入时,只添加新员工。现有员工不应再次添加。到目前为止我尝试了什么我附在下面。我试过的代码附在下面。Class.forName("com.mysql.jdbc.Driver");        con = DriverManager.getConnection("jdbc:mysql://localhost/spay","root","");                   con.setAutoCommit(true);        stmt = con.createStatement();       ResultSet rs = stmt.executeQuery("select empno from registation");        while (rs.next()) {          String empvalue = rs.getString("empno");            pst = con.prepareStatement("insert into leaves(empno,casual,annual,medical,year)values(?,?,?,?,?)");            pst.setString(1,empvalue); // employee no how to give             pst.setString(2, cas);            pst.setString(3, anu);            pst.setString(4, med);            pst.setString(5, year);                     pst.executeUpdate();        }            JOptionPane.showMessageDialog(null,"Leave Insertedddddd");
查看完整描述

1 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

当您执行此操作时select empno from registation,它将从注册表中选择所有 empno ...结果集将包含所有用户...


所以当你这样做时,


while (rs.next()) { //rs now has all the employee

      String empvalue = rs.getString("empno");

        pst = con.prepareStatement("insert into leaves(empno,casual,annual,medical,year)values(?,?,?,?,?)");

        pst.setString(1,empvalue); // employee no how to give 

        pst.setString(2, cas);

        pst.setString(3, anu);

        pst.setString(4, med);

        pst.setString(5, year);         

        pst.executeUpdate();

    }

它再次添加了所有员工......


你可以做的是,在select empno from registation......


例如。仅选择具有“001”empno 的单个用户:


SELECT empno FROM registation WHERE empno = '001';

要选择多个员工,您可以使用类似下面的操作...


SELECT empno FROM registation WHERE empno = '001' OR empno = '002' OR empno = '003'; 

为此,您可以OR empno = '00X'根据需要在后面附加任意数量


或者


要选择表中的最后一个条目:


SELECT empno FROM registation ORDER BY id DESC LIMIT 1;


查看完整回答
反对 回复 2023-02-23
  • 1 回答
  • 0 关注
  • 100 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号