java - 如果数据已经存在,如何验证 jTextField?

标签 java swing validation jdbc jtextfield

我有一个添加客户信息新数据的框架。我想验证我的 JTextField,当我输入现有 customerName 时,消息对话框显示“客户名称已存在!”。

这是我向数据库表添加新数据的代码。我应该将这些 JTextField 验证代码放在哪里?

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         

    try {
        cn.connection();
        String sql = "insert into customer(customerName, customerPhone, customerAddress, contactPerson) values('" + customerName.getText() + "','" + customerPhoneTxtField.getText() + "', '"+ textCustomerAddress.getText() +"', '"+contactPersonTxtField.getText()+"')";
        ps = cn.con.prepareStatement(sql);
        ps.execute();
        JOptionPane.showMessageDialog(null, "Customer Successfully Added");

    }
    catch (Exception e) {
        JOptionPane.showMessageDialog(null, "Fill in the field(s) to complete.", "Error", JOptionPane.ERROR_MESSAGE);
    }
}                                     

最佳答案

在将数据插入数据库之前,您应该右击一条 select 语句来检查客户是否存在。

String sql = "SELECT * FROM customer WHERE customerName = '"+JTextfield.getText()+"'";

触发此查询,如果它返回行,则该客户名称存在(如果客户名称存在,在这种情况下,您可以使用 JOptionPane 显示弹出窗口。

此代码应位于 JButton.actionPerformed 中。

关于java - 如果数据已经存在,如何验证 jTextField?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22282942/

相关文章:

java - org.hibernate.LazyInitializationException : failed to lazily initialize a collection of role while using Javers

java - 当某些组件调整大小时,BoxLayout 中的组件会移动

java - 我应该如何将 JLabel 从 JFrame 中的一个 JPanel 拖动到同一 JFrame 中另一个 JPanel 中的 JTextField 上?

ruby-on-rails - 更智能的回形针验证

javascript - 如何让正则表达式适用于 mm/dd/yyyy 和 yyyy-mm-dd 格式

php - 在新页面上提交表单php中有另一个新表单

java - Java 货币 API 中缺少一些货币符号

java - JFileChooser - 在当前目录中打开

java - 如何将 IntBinaryOperator 与 Java Swing 的 Switch Case 语句一起使用? (简单计算器)

java - Xerces 在 SUN JRE v1.5 和 IBM J9 v1.5 上的行为不同