是否可以在vertx postgres客户端中使用updatewithparms()将数据插入到使用json数组。我尝试了以下任何成功。
echo "${month}"
echo " [$(printf "%.s=" $(seq 1 ${length}))]"
然后我按如下方式调用函数。
String INSERT_QUERY="INSERT INTO testDb (rid , aid , created_at, expiry_time, strings , strings) VALUES"
private JsonArray preparedParameters(){
//JsonArray params = new JsonArray();
DateTimeFormatter dateTimeFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
return new JsonArray()
.add(device.getRecordId().toString())
.add( device.getAccountId())
.add(dateTimeFormat.format(device.getCreatedAt()))
.add(dateTimeFormat.format(device.getExpiresAt()))
.add( device.getEnrollmentId())
.add(device.getHashedEnrollmentId());
}
我收到以下错误。
try (SQLConnection connection = connectionResult.result()) {
connection.updateWithParams(INSERT_QUERY,preparedParameters() ,queryRes -> {
if (queryRes.succeeded()) {
booleanFuture.complete(true);
} else {
booleanFuture.complete(false);
}
});
} catch (Exception e) {
booleanFuture.complete(false);
}
com.github.mauricio.async.db.exceptions.InsufficientParametersException:查询包含0个参数,但你给它6(“sda”,“sda”,2018-01-22 20:23:26,2018-02 -21 20:23:26,“sda”,“sda”)
答案 0 :(得分:3)
您的查询无效,但错过了参数。
String INSERT_QUERY="INSERT INTO testDb (rid , aid , created_at, expiry_time, strings , strings) VALUES (?,?,?,?,?,?)"
请参阅Vert.x SQL文档的Prepared Statement Updates部分。