我是MySQL新手。我在这里遇到问题。我有一个查询插入数据到数据库,但我的问题是如何避免重复的记录。JAVA - 如何避免在MySQL中重复值?
因此,这里是我的代码:
private void btnSaveGuestActionPerformed(java.awt.event.ActionEvent evt) {
String name = nameTextField.getText();
String address = addressTextField.getText();
String nationality = nationalityTextField.getText();
String com = comNameTextField.getText();
String email = emailTextField.getText();
String contact = contactNoTextField.getText();
if(name.isEmpty() || address .isEmpty() || nationality.isEmpty() || com.isEmpty() || email.isEmpty() || contact.isEmpty()){
JOptionPane.showMessageDialog(null, "Please input any of the following.");
}
else{
try{
String query = "INSERT INTO guestlist (Name, address, Nationality, CompanyName, email, contactNo)"
+ "VALUES ?, ?, ?, ?, ?, ?";
PreparedStatement pst = conn.prepareStatement(query);
ResultSet rs = pst.executeQuery("SELECT * FROM guestlist");
pst.setString(1, nameTextField.getText());
pst.setString(2, addressTextField.getText());
pst.setString(3, nationalityTextField.getText());
pst.setString(4, comNameTextField.getText());
pst.setString(5, emailTextField.getText());
pst.setString(6, contactNoTextField.getText());
pst.execute();
pst.close();
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
}
对不起,在这里我的无知,但我很新的DBMS。我希望你能回答我的问题。非常感谢,祝你有美好的一天! :)
那么,为了避免重复,我所要做的就是把它变成UNIQUE? (如果我没有弄错。) – jhenryj09
@ jhenryj09。 。 。我不确定“它”是指什么,但是唯一的索引或约束使数据库负责维护唯一性。 –
你有没有提到过那些例子?如果你不介意,我可以有这些副本吗? :) – jhenryj09