如何使用XDB java绑定查询中的参数
我无法绑定此代码中的参数:如何使用XDB java绑定查询中的参数,java,prepared-statement,influxdb,parameterbinding,Java,Prepared Statement,Influxdb,Parameterbinding,我无法绑定此代码中的参数: import org.influxdb.InfluxDB; import org.influxdb.InfluxDBFactory; import org.influxdb.dto.BoundParameterQuery; import org.influxdb.dto.Query; import org.influxdb.dto.QueryResult; public class BindTest { public static void main(Str
import org.influxdb.InfluxDB;
import org.influxdb.InfluxDBFactory;
import org.influxdb.dto.BoundParameterQuery;
import org.influxdb.dto.Query;
import org.influxdb.dto.QueryResult;
public class BindTest {
public static void main(String[] args) {
InfluxDB influxDB = InfluxDBFactory.connect("http://127.0.0.1:8086");
String s = "SELECT LAST(*) FROM batch_assembly_monitoring WHERE last_batch_start = $lbs";
Query query = BoundParameterQuery.QueryBuilder.newQuery(s)
.bind("lbs", 234567890)
.create();
System.out.println(query.getCommand());
QueryResult result = influxDB.query(query);
}
}
我在stdout获得的输出:
从批次组装监控中选择最后一个批次开始处的最后一个(*)=
$lbs
XDB日志还包含以下内容:
[httpd]172.17.0.1---[24/Sep/2020:12:40:29+0000]“发布
/查询?参数=%7B%22lbs%22%3A234567890%7D&q=选择+最后一个%28%2A%29+来自+批次组装监控+其中+最后一个批次开始+%3D+%24lbs
HTTP/1.1“20089”-“okhttp/4.8.1”
20fe610d-fe63-11ea-81ba-0242ac110002 271
似乎绑定参数未绑定,并且在查询中使用了占位符字符串,而不是值234567890
我做错了什么?问题是连接后我没有设置数据库:
influxDB.setDatabase("my_database");
之后,它开始工作。XDB日志仍然不包含绑定参数,仅包含“lbs”字符串,但已传递该参数