我正在尝试解决在Postgresql表中插入的问题

我看了这个类似的问题,但没有解决我的问题

ERROR : The column index is out of range: 1, number of columns: 0

这是获取错误的代码部分:

String query = "INSERT INTO reviews (nbstar, body, author, product_id) VALUES($1,$2,$3,$4)";

PreparedStatement prepareStatement = connection.prepareStatement(query);
prepareStatement.setInt(1, nbStar);
prepareStatement.setString(2, body);
prepareStatement.setString(3, author);
prepareStatement.setInt(4, productId);

boolean executed = prepareStatement.execute();

我试过几次来更改索引号,但仍然是相同的错误

这是表的架构:

table schema

谁能给我个建议?

谢谢。

最佳答案

在sql查询中,您想插入5个字段的值(id,nbstar,body,author,product_id),但只有4个值VALUES($ 1,$ 2,$ 3,$ 4)。

根据您编辑的问题进行更新,只需按如下所示修改查询即可:

VALUES($1,$2,$3,$4)


VALUES(?,?,?,?)

关于java - 错误: The column index is out of range: 1,列数:0,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36439305/

10-12 19:32