我有一点工作,但改变了路径和其他一些字段,现在我似乎无法再次更新它。这是代码:
public class DbUpdate{
ResultSet rs;
Statement st;
public void DbUpdate(){
Connect();
}
public void Connect(){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=C:\\User\\ugt\\Desktop\\ResourcePlanningTool_DB.accdb");
st = con.createStatement();
st.executeUpdate("INSERT INTO AssignmentDetails (Name) VALUES('Bob Joll')");
}
catch(Exception e){
System.out.println(e);
}
}
public static void main(String[] args){
DbUpdate x = new DbUpdate();
}
}
目前项目运行时没有错误,但似乎没有实际更新表。路径名也是正确的。
答案 0 :(得分:1)
public void DbUpdate()
不是一个构造函数,也没有被调用。我删除了void,并在executeUpdate之后添加了con.commit()
并且它有效。
编辑:似乎不需要提交。
int retVal = st.executeUpdate("INSERT INTO AssignmentDetails (Name) VALUES('Bob Joll')");
System.out.println("Inserted: " + retVal);
//con.commit();
//con.close();