Reputation: 53
I am receiving an error like this:
comit :net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::3.0.7 unexpected token: : required: ) data comittgl : 00:00:00.0id :3 mesin :PU 6 resource :<22 tonase :120.0 gaji :21500.0 sub tot: 2580000.0
This is my code:
public void comit(String tanggal,String id_gaji_kuli,String mesin,String resource,double tonase,double gaji,double sub_total_gaji)
{
conn = Connect.ConnectDB();
String sql = "insert into gaji(Tanggal,id_gaji_kuli,mesin,resource,tonase,gaji,sub_total_gaji)"
+ "values("+tanggal+",'"+id_gaji_kuli+"','"+mesin+"','"+resource+"','"+tonase+"','"+gaji+"','"+sub_total_gaji+"');";
try{
pst = conn.prepareStatement(sql);
pst.execute();
JOptionPane.showMessageDialog(null, "Saved");
// UpdateJTable();
//conn.close();
}
catch(Exception e){
//JOptionPane.showMessageDialog(null, e);
System.out.println("comit :"+e);
}
Upvotes: 0
Views: 985
Reputation: 123399
You are not using the PreparedStatement in the "right" way. You should be using a parameterized query like this:
String sql =
"insert into gaji (Tanggal, id_gaji_kuli, ...) " +
"values (?, ?, ...)";
pst = conn.prepareStatement(sql);
pst.setString(1, tanggal);
pst.setString(2, id_gaji_kuli);
// ...
pst.executeUpdate();
Upvotes: 1