0

There are many questions related to this topic, but I couldn't find a solution to my problem. I have a table of "products" which I am trying to update in netbeans. The SQL statements works in SQL dev, and I have double checked my connection etc.

update products
set pvolume = 2, pprice = 15
where productid = 3;

output: 1 rows updated.

but running in netbeans it won't execute. If I have missed some small syntax issue I apologize, but I really need help with this method.

public boolean editProduct(int ID, String name, int volume, int quantity, String description, int price) {
    boolean success = false;
    Connection con = ConnectionTools.getInstance().getCurrentConnection();
    String SQLString1 = "UPDATE products "
                        + "SET pname = ?, "
                        + "pvolume = ?, "
                        + "pquantity = ?, "
                        + "pdescription = ?, "
                        + "pprice = ? "
                        + "WHERE productID = ?";
    PreparedStatement statement = null;
    try {
        statement = con.prepareStatement(SQLString1);
        statement.setString(1, name);
        statement.setInt(2,volume);
        statement.setInt(3, quantity);
        statement.setString(4, description);
        statement.setInt(5, price);
        statement.setInt(6, ID);
        statement.executeUpdate();
        success = true;
    }catch (Exception e){
        System.out.println("Insertion error!");
        System.out.println(e.getMessage());
    }finally {
        try {
            statement.close();
        } catch (SQLException e) {
            System.out.println("Statement close error!");
            System.out.println(e.getMessage());
        }
    }
    return success;
}

Running through the debug it seems to run through the try as far as statement.setInt(6, ID) but then does not execute. Here is the output:

Insertion error! ORA-00971: missing SET keyword

Any help/advice would be appreciated! Thanks

4

1 回答 1

0

你必须使用括号:update products set (pvolume = 2, pprice = 15) where productid = 3

于 2013-04-06T11:18:26.013 回答