Java 无法使用postgresql中的AND运算符更新数据库中的值

Java 无法使用postgresql中的AND运算符更新数据库中的值,java,postgresql,jdbc,sql-update,sqlexception,Java,Postgresql,Jdbc,Sql Update,Sqlexception,我正在开发一个JavaSwing应用程序,在该应用程序中,当用户进行任何更改时,我将尝试更新PostgreSQL数据库。 表中有四个字段,如果我尝试一次更新一列,它工作正常,但当我使用时,它会向我显示以下错误消息 捕获的异常:-org.postgresql.util.PSQLException:错误:和的参数必须是布尔类型,而不是类型字符变化 下面是我用来更新表的代码 Connection con = DbConnection.getConnect(); Statement stmt = con

我正在开发一个JavaSwing应用程序,在该应用程序中,当用户进行任何更改时,我将尝试更新PostgreSQL数据库。 表中有四个字段,如果我尝试一次更新一列,它工作正常,但当我使用时,它会向我显示以下错误消息

捕获的异常:-org.postgresql.util.PSQLException:错误:和的参数必须是布尔类型,而不是类型字符变化

下面是我用来更新表的代码

Connection con = DbConnection.getConnect();
Statement stmt = con.createStatement();
String sql = "UPDATE webservice_config set product = ? AND product_cat = ? AND stock = ? where ID=?;";
PreparedStatement pstInsert = con.prepareStatement(sql);
pstInsert.setString(1, product);
pstInsert.setString(2, productCat);
pstInsert.setString(3, stock);
pstInsert.setString(4, "1");
pstInsert.executeUpdate();
con.close();
任何帮助

当对一个包含多个应使用列的表执行更新时,将每一列而不是AND运算符分开,因此您的代码应如下所示:

 String sql = "UPDATE webservice_config set product = ?,product_cat = ?,stock = ? where ID=?;";
当对包含多个应使用列的表执行更新时,如果第一个条件和第二个条件均为真,则AND运算符将显示一条记录,以分隔每一列而不是AND运算符,因此您的代码应如下所示:

 String sql = "UPDATE webservice_config set product = ?,product_cat = ?,stock = ? where ID=?;";

如果第一个条件和第二个条件都为真,AND运算符将显示一条记录,产品类别=,股票=?其中ID=@vivek Id在这里pstInsert.setString 4,1@vivek谢谢,是的,这是个问题。感谢您的帮助应该是更新webservice\u配置集产品=,产品类别=,股票=?其中ID=@vivek Id在这里pstInsert.setString 4,1@vivek谢谢,是的,这是个问题。谢谢你的帮助