gpt4 book ai didi

java - 在 MySQL 中插入多行

转载 作者:行者123 更新时间:2023-11-29 23:57:53 25 4
gpt4 key购买 nike

我正在尝试将以下详细信息从 jtextfields 插入到数据库中。要插入的列是 Guest 表中的 roomNumberSelected,guestName,passportNo,phoneNo。

目前编译时,仅插入最后一行数据。我正在我的应用程序中实现三层架构。我相信我必须改变我的 SQL 语句才能插入多个值,但我不确定如何去做。

enter image description here

UI - GuestDetails.java

没有。所需房间数相当于 noOfRoomsSelected。在本例中,noOfSelectedRooms = 5;

if(noOfRoomsSelected=="1"){

if(name1.isEmpty()||passportNo1.isEmpty()||phoneNo1.isEmpty()){
JOptionPane.showMessageDialog(null, "Some Required field(s) are not entered. Please try again.");
}

else{
g.setSelectedRoomNum(comboBox1.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo1.getText());
g.setGuestName(tfGuestName1.getText());
g.setGuestPhoneNo(tfPhoneNo1.getText());
}
}

else if(noOfRoomsSelected=="2"){

if(name1.isEmpty()||passportNo1.isEmpty()||phoneNo1.isEmpty()
||name2.isEmpty()||passportNo2.isEmpty()||phoneNo2.isEmpty()){

JOptionPane.showMessageDialog(null, "Some Required field(s) are not entered. Please try again.");
}

else{
g.setSelectedRoomNum(comboBox1.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo1.getText());
g.setGuestName(tfGuestName1.getText());
g.setGuestPhoneNo(tfPhoneNo1.getText());
g.setSelectedRoomNum(comboBox2.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo2.getText());
g.setGuestName(tfGuestName2.getText());
g.setGuestPhoneNo(tfPhoneNo2.getText());
}
}

else if(noOfRoomsSelected=="3"){

if(name1.isEmpty()||passportNo1.isEmpty()||phoneNo1.isEmpty()
||name2.isEmpty()||passportNo2.isEmpty()||phoneNo2.isEmpty()||
name3.isEmpty()||passportNo3.isEmpty()||phoneNo3.isEmpty()){
JOptionPane.showMessageDialog(null, "Some Required field(s) are not entered. Please try again.");
}

else {

g.setSelectedRoomNum(comboBox1.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo1.getText());
g.setGuestName(tfGuestName1.getText());
g.setGuestPhoneNo(tfPhoneNo1.getText());
g.setSelectedRoomNum(comboBox2.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo2.getText());
g.setGuestName(tfGuestName2.getText());
g.setGuestPhoneNo(tfPhoneNo2.getText());
g.setSelectedRoomNum(comboBox3.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo3.getText());
g.setGuestName(tfGuestName3.getText());
g.setGuestPhoneNo(tfPhoneNo3.getText());
}
}

else if(noOfRoomsSelected=="4"){
if(name1.isEmpty()||passportNo1.isEmpty()||phoneNo1.isEmpty()
||name2.isEmpty()||passportNo2.isEmpty()||phoneNo2.isEmpty()||
name3.isEmpty()||passportNo3.isEmpty()||phoneNo3.isEmpty()
||name4.isEmpty()||passportNo4.isEmpty()||phoneNo4.isEmpty()){
JOptionPane.showMessageDialog(null, "Some Required field(s) are not entered. Please try again.");
}

else{
g.setSelectedRoomNum(comboBox1.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo1.getText());
g.setGuestName(tfGuestName1.getText());
g.setGuestPhoneNo(tfPhoneNo1.getText());
g.setSelectedRoomNum(comboBox2.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo2.getText());
g.setGuestName(tfGuestName2.getText());
g.setGuestPhoneNo(tfPhoneNo2.getText());
g.setSelectedRoomNum(comboBox3.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo3.getText());
g.setGuestName(tfGuestName3.getText());
g.setGuestPhoneNo(tfPhoneNo3.getText());
g.setSelectedRoomNum(comboBox4.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo4.getText());
g.setGuestName(tfGuestName4.getText());
g.setGuestPhoneNo(tfPhoneNo4.getText());
}
}


else if(noOfRoomsSelected=="5"){

if(name1.isEmpty()||passportNo1.isEmpty()||phoneNo1.isEmpty()
||name2.isEmpty()||passportNo2.isEmpty()||phoneNo2.isEmpty()||
name3.isEmpty()||passportNo3.isEmpty()||phoneNo3.isEmpty()
||name4.isEmpty()||passportNo4.isEmpty()||phoneNo4.isEmpty()
||name5.isEmpty()||passportNo5.isEmpty()||phoneNo5.isEmpty()){
JOptionPane.showMessageDialog(null, "Some Required field(s) are not entered. Please try again.");
}

else{
g.setSelectedRoomNum(comboBox1.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo1.getText());
g.setGuestName(tfGuestName1.getText());
g.setGuestPhoneNo(tfPhoneNo1.getText());
g.setSelectedRoomNum(comboBox2.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo2.getText());
g.setGuestName(tfGuestName2.getText());
g.setGuestPhoneNo(tfPhoneNo2.getText());
g.setSelectedRoomNum(comboBox3.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo3.getText());
g.setGuestName(tfGuestName3.getText());
g.setGuestPhoneNo(tfPhoneNo3.getText());
g.setSelectedRoomNum(comboBox4.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo4.getText());
g.setGuestName(tfGuestName4.getText());
g.setGuestPhoneNo(tfPhoneNo4.getText());
g.setSelectedRoomNum(comboBox5.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo5.getText());
g.setGuestName(tfGuestName5.getText());
g.setGuestPhoneNo(tfPhoneNo5.getText());
}
}

实体类-Guest.java

public boolean createGuestRecord(Guest g){
boolean success = false;
DBController db = new DBController();
String dbQuery;

//step 1 - establish connection to database
try{
db.getConnection();

dbQuery = "INSERT INTO guest(selectedRoomNum,guestPassportNo,guestName,guestPhoneNo,passNo)";
dbQuery = dbQuery + " VALUES ('" + selectedRoomNum + "','" + guestPassportNo+ "','" + guestName + "','" + guestPhoneNo + "','" + passNo + "')";




//step 3 - to insert record using updateRequest method
if (db.updateRequest(dbQuery) == 1){ //record inserted
success = true;
}
}

catch(Exception e){
System.out.println(e);
}

//step 4 - close connection
db.terminate();

return success;


}

最佳答案

当然你只有最后一条记录。只需查看您的代码即可:

            g.setSelectedRoomNum(comboBox1.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo1.getText());
g.setGuestName(tfGuestName1.getText());
g.setGuestPhoneNo(tfPhoneNo1.getText());

// >>>>>>>>> Nothing here <<<<<<<<<

g.setSelectedRoomNum(comboBox2.getSelectedItem().toString());
g.setGuestPassportNo(tfPassportNo2.getText());
g.setGuestName(tfGuestName2.getText());
g.setGuestPhoneNo(tfPhoneNo2.getText());

完成所有这些分配后,g 具有第 2 行的数据,第 1 行的数据消失了。因此,当插入开始时,g 仅具有最后一条记录的数据。将字段分配给 g 后插入行。

关于java - 在 MySQL 中插入多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25225970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com