我试图插入以下数据,但当我按下保存按钮时,会显示以下错误:java.sql.SQLException:[SQLITE_error]sql错误或丢失数据库(靠近"ID":语法错误)
谢谢你的帮助=)
JButton btnSave = new JButton("Save");
btnSave.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
try {
String query="INSERT INTO PatientInfo (Patient ID, First Name, Last Name, Date of Birth, Address, Emergency Phone Number, Medical Condition, Appointments, Milling, Comments) values (?,?,?,?,?,?,?,?,?,?)";
preparedstatement=connection.prepareStatement(query);
preparedstatement.setString(1, patientIDtextField.getText());
preparedstatement.setString(2, firstNametextField.getText());
preparedstatement.setString(3, lastNametextField.getText());
preparedstatement.setString(4, dobtextField.getText());
preparedstatement.setString(5, addresstextField.getText());
preparedstatement.setString(6, EPNtextField.getText());
preparedstatement.setString(7, MedicalContextField.getText());
preparedstatement.setString(8,ApptextField.getText());
preparedstatement.setString(9, BillingtextField.getText());
preparedstatement.setString(10, CommentstextField.getText());
preparedstatement.executeQuery();
JOptionPane.showMessageDialog(null, "Data Saved");
} catch (Exception e1) {
JOptionPane.showMessageDialog(null, e1);
}
finally{
try{
preparedstatement.close();
}
catch(Exception e1){
JOptionPane.showMessageDialog(null, e1);
}
}
}
});
此处Patient ID
和其他列名中都有空格。这就是问题所在。如果列名确实包含空格,则应该以某种方式限定它们:例如使用"
。所以你应该试试"Patient ID"
。