Java - 无法执行 AQL 查询
Java - Failed to execute AQL query
如何修复AQL语法错误?
我正在尝试使用查询创建边,但出现以下错误:
Failed to execute query. Response: 400, Error: 1501 - AQL: syntax error, unexpected end of query string near '@edges' at position 1:57 (while parsing)
用于执行查询的代码:
try {
String query = "INSERT { _from:TurmaA._teste2, _to:TurmaA._testepedro } IN @edges";
Map<String, Object> bindVars = new MapBuilder().put("edges", nome2).get();
ArangoCursor<BaseDocument> cursor = arangoDB.db(dbName).query(query, bindVars,
null, BaseDocument.class);
cursor.forEachRemaining(aDocument -> {
System.out.println("Key: " + aDocument.getKey());
});
} catch (ArangoDBException e) {
System.err.println("Failed to execute query. " + e.getMessage());
}
请注意collection bind variables have to be prefixed by two @@
。
因此您的代码示例可能可以像这样轻松修复:
try {
String query = "INSERT { _from:TurmaA._teste2, _to:TurmaA._testepedro } IN @@edges";
Map<String, Object> bindVars = new MapBuilder().put("@edges", nome2).get();
ArangoCursor<BaseDocument> cursor = arangoDB.db(dbName).query(query, bindVars,
null, BaseDocument.class);
cursor.forEachRemaining(aDocument -> {
System.out.println("Key: " + aDocument.getKey());
});
} catch (ArangoDBException e) {
System.err.println("Failed to execute query. " + e.getMessage());
}
如何修复AQL语法错误? 我正在尝试使用查询创建边,但出现以下错误:
Failed to execute query. Response: 400, Error: 1501 - AQL: syntax error, unexpected end of query string near '@edges' at position 1:57 (while parsing)
用于执行查询的代码:
try {
String query = "INSERT { _from:TurmaA._teste2, _to:TurmaA._testepedro } IN @edges";
Map<String, Object> bindVars = new MapBuilder().put("edges", nome2).get();
ArangoCursor<BaseDocument> cursor = arangoDB.db(dbName).query(query, bindVars,
null, BaseDocument.class);
cursor.forEachRemaining(aDocument -> {
System.out.println("Key: " + aDocument.getKey());
});
} catch (ArangoDBException e) {
System.err.println("Failed to execute query. " + e.getMessage());
}
请注意collection bind variables have to be prefixed by two @@
。
因此您的代码示例可能可以像这样轻松修复:
try {
String query = "INSERT { _from:TurmaA._teste2, _to:TurmaA._testepedro } IN @@edges";
Map<String, Object> bindVars = new MapBuilder().put("@edges", nome2).get();
ArangoCursor<BaseDocument> cursor = arangoDB.db(dbName).query(query, bindVars,
null, BaseDocument.class);
cursor.forEachRemaining(aDocument -> {
System.out.println("Key: " + aDocument.getKey());
});
} catch (ArangoDBException e) {
System.err.println("Failed to execute query. " + e.getMessage());
}