我正在尝试从NetBeans更新MS Access中的表行。但我收到了错误 -
net.ucanaccess.jdbc.UcanaccessSQLException:意外令牌:需要LEFT:SET
我已经在MS-Access中直接测试了查询,这是完美的。但是当我在NetBeans中使用相同的查询时,它会抛出错误。
我的更新查询:
ps_ins_new_prod = con.prepareStatement("UPDATE Inv_Category LEFT JOIN Inv_Product ON Inv_Category.Category_ID = Inv_Product.Category_ID SET Inv_Product.[Size] = ?, Inv_Product.Quantity = ?, Inv_Product.Item_No = ?, Inv_Product.Purchase_Price = ?, Inv_Product.Selling_Price = ?, Inv_Product.Category_ID = ? WHERE (((Inv_Product.Product_Name)=?) AND ((Inv_Product.Size)=?) AND ((Inv_Category.Category_Name)=?) AND ((Inv_Product.Quantity)=?) AND ((Inv_Product.Item_No)=?) AND ((Inv_Product.Purchase_Price)=?) AND ((Inv_Product.Selling_Price)=?) AND ((Inv_Product.Category_ID)=?))");
答案 0 :(得分:1)
内部Ucanaccess针对HSQLDB数据库运行查询,该数据库在UPDATE中不支持LEFT OUTER JOINS。
使用MERGE命令查看this thread以获取讨论和可能的解决方法。