我目前正试图使用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);
}
}
您的问题是WHERE关键字前面的逗号。你得把它移除。也就是改变
CGender =?, WHERE
到
CGender =? WHERE
我正在尝试做一些Ucanaccess实践,用Java管理一些数据库。我得到了一个我不知道如何解决的错误。 我在Access中有一个名为USERS的表: 自动编号,短文本,短文本,数字。 代码继续,但只有一些条件和查询。
我正在看一些旧代码,在运行一个单元测试时遇到了问题。 代码为: 但是,当试图准备语句时,它会抛出错误 用户缺少权限或找不到对象:CUSTOMERS_SEQ。下一个瓦尔。 我正在阅读错误本身,似乎找不到任何东西。奇怪的是,当我在本地运行查询选择CUSTOMERS_SEQ.NEXTVAL时,它工作正常。 任何和所有的帮助将不胜感激。
当我试图将数据放入数据库时,我出现了一个错误,这是我的注册函数
我的程序是一个会计管理器,我有一个HSQLDB。这是主类,我目前正在对程序进行测试,所以在主函数中是我输入测试代码以将值插入数据库的地方。这是应用程序类。 我已经多次检查该表是否存在。我使用IntelliJ idea,它有一个数据库管理器,当我直接在数据库中运行相同的SQL时,它运行得很好,所以我知道问题不在于SQL代码。
我试图用外键将一个元组从输入关系INPUTRel插入到源关系uk_rd_penst中,然后更新目标关系uk_status的元组。UK_Status和UK_RD_POSTAD具有主键-外键关系。 以下是参数:inputrel:TransId,Company,ICB_Code,RD2008 uk_rd_peston:Company,ICB_Code,RD_spend_2008 uk_status:Co