我正在使用Netbeans
來製作java程序,我想將數據插入到我的「data supplier
」表中。我無法發佈我的JFrame
圖片,因爲我的聲望不夠。java應用程序不能將空值插入到mysql數據庫中
我設置"Kode Supplier
「爲PRIMARY_KEY
和NOT_NULL
,並讓其餘的是NULL
在下面的代碼,telpField
和hpField
會顯示一個錯誤,如果我沒有在其中鍵入任何的文本框
是否有可能,因爲它是INT
型
這是我的代碼:?
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
try{
String sql = "INSERT INTO datasupplier (`Kode Supplier`, `Nama Supplier`, `Contact Person`,"
+ " `Alamat`, `NoTelp`, `NoHP`, `Bank Account`, `A/C Info`, `A.N.`, `Keterangan`)"
+ " VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
pst = conn.prepareStatement(sql);
//Get value from the textboxes
pst.setString(1, codeField.getText());
pst.setString(2, nameField.getText());
pst.setString(3, cpField.getText());
pst.setString(4, addressField.getText());
pst.setString(5, telpField.getText());
pst.setString(6, hpField.getText());
pst.setString(7, bankField.getText());
pst.setString(8, acField.getText());
pst.setString(9,anField.getText());
pst.setString(10, ketField.getText());
pst.execute();
JOptionPane.showMessageDialog(null, "Tabel Telah Di Update");
}
catch(Exception e){
JOptionPane.showMessageDialog(null, "Data Invalid");
}
DataSupplierTable();
}
//Set JComboBox First Diplayed Item
private void setTableCombo(){
tableCombo.setSelectedItem("Data Supplier");
}
//Bind the table and databarang.datasupplier
private void DataSupplierTable(){
String sql = "SELECT * FROM datasupplier";
try{
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
supplierTable.setModel(DbUtils.resultSetToTableModel(rs));
supplierTable.isCellEditable(0,0);
}catch(Exception e){
}
}
這是我的表(使用MySQL社區服務器數據庫,InnoDB的)
Kode Supplier INT(30) PRIMARY_KEY NOT_NULL, Nama Supplier CHAR(45), Contact Person VARCHAR(20), Alamat VARCHAR(45), NoTelp INT(30), NoHP INT(30), Bank Account CHAR(30), A/C Info VARCHAR(45), A.N. CHAR(45), Keterangan VARCHAR(100)
什麼是確切的錯誤信息? – Rahul
是的,這可能是因爲它是整數類型。你不要在整數字段中使用'setString'。你爲什麼不添加你的表定義? – RealSkeptic
@Rahul錯誤消息是:「java.sql.SQLException:錯誤的整數值:第1行'列'NoTelp'」 – Dante26