对数据库中重复主键进行判断

本文介绍了一段Java代码,用于验证用户输入的科目ID和学分是否符合要求,并检查科目ID是否已存在数据库中。通过使用正则表达式匹配和数据库查询,确保了数据的准确性和唯一性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

String sql = "select sub_id from subject";//查询subject表的sub_id
    resultSet = statement.executeQuery(sql);
    int iscount = 0;
    while(resultSet.next())  {
       data[0] = resultSet.getString("sub_id");
       if(this.sub_idTextField.getText().equals(data[0]))
       {   iscount++;   }
    }   
    if(iscount == 0){
     if(this.sub_nameTextField.getText().trim().equals(""))
     { JOptionPane.showMessageDialog(this, "科目不能为空!!"); }
     else
      if(addSub_IdNumber(this.sub_idTextField.getText()) == true &&
        addSub_IdNumber(this.creditTextField.getText()) == true){}

 

 JOptionPane.showMessageDialog(this, "增加成功!!");
       this.sub_idTextField.setText("");
    this.sub_nameTextField.setText("");
    this.creditTextField.setText("");
    
     // }else JOptionPane.showMessageDialog(this, "科目输入格式错误!!");
       }
      else  JOptionPane.showMessageDialog(this, "输入科目ID或学分格式错误!!");
    }
    else
     JOptionPane.showMessageDialog(this, "请输入不同的科目ID!!");

 

 

public static boolean addSub_IdNumber(String str) {  //判断输入是否为正确的科目ID类型 ( 正则式)
  Pattern pattern = Pattern.compile("// *[0-9]*// *");
  Matcher isNum = pattern.matcher(str);
  if (!isNum.matches()) {
   return false;// 输入是字符时的返回值
  }
   return true;// 输入是数字时的返回值
     }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值