UCanAccess错误:用户缺少未找到的权限或对象:WHERE

时间:2015-08-13 15:21:49

标签: java ms-access jdbc ucanaccess

我目前正在尝试使用Java Netbeans将记录更新到MS Access数据库中,并且我继续收到以下错误:

ERROR: net.ucanaccess.jdbc.UcanaccessSQLException: user lacks privilege or object not found: WHERE

以下是我的代码:

public void Edit(Customer a, int id) {     
    con = DBConnect();

    String sql = "Update Customer set CName =?,CAge =?,CPhone =?,CAddress =?, CGender =?, WHERE [ID] =" + id + "";


    try {
        s = con.prepareStatement(sql);
        s.setString(1, a.getName());
        s.setString(2, a.getAge());
        s.setString(3, a.getContact());
        s.setString(4, a.getAddress());
        s.setString(5, a.getGender());

        s.executeUpdate();
        JOptionPane.showMessageDialog(null, "Customer profile Updated");       

    } catch (Exception e) {
        JOptionPane.showMessageDialog(null, e);
    }
}

2 个答案:

答案 0 :(得分:1)

您的问题是WHERE关键字之前的逗号。你需要删除它。也就是说,改变

CGender =?, WHERE

CGender =? WHERE

答案 1 :(得分:0)

当您经常错误键入查询时,通常会发生此错误。仔细检查查询的语法。肯定会解决错误。