当前位置: 首页 > 知识库问答 >
问题:

SPARQL插入查询和创建查询无法通过SPARQLRepository和GraphDB工作

谷梁玺
2023-03-14

我使用GraphDB存储库,希望通过Java使用SPARQLRepository执行一些查询。当我阅读这些问题时,它工作得很好。但当我有一个查询“creategraph:example”或一个insert-and-delete查询时,它就不起作用了。当我通过GraphDB UI执行查询时,它运行良好。SPARQLRepository的doku说,我需要第二个endpoint,根据GraphDB doku,最后是“/statements”。所以在我的代码中,它看起来像这样:

String repositoryUrl = "http://localhost:7200/repositories/test";
SPARQLRepository repository = new SPARQLRepository(repositoryUrl, repositoryUrl + "/statements");

我可以用这个来执行一个读取查询,但当我想执行一个创建新图形的查询时,它说

15:12:12.108 [main] WARN  o.e.r.h.c.SharedHttpClientSessionManager$3 - Server reports problem: Encountered " "create" "CREATE "" at line 1, column 1.
Was expecting one of:
    "base" ...
    "prefix" ...
    "select" ...
    "construct" ...
    "describe" ...
    "ask" ...

有人能帮我吗?谢谢

共有1个答案

戚俊健
2023-03-14

问题是我使用了prepareQuery而不是prepareUpdate。非常感谢!现在它起作用了。

 类似资料:
  • 这里有一个名为的小本体,由Protégé创建,其中我有类、、、和个体()、()和(也是)。在本体论中,我只声明。 当我在Protégé的DL Query选项卡中请求的实例时,我得到的是(它是,因此是,因此是)。 但当我编写以下SPARQ查询时: 我没有任何例子。当我将替换为时,结果是相同的。只有当我用替换它时,我才会得到所需的结果。 为什么DL查询做推断(允许我获得作为类的实例),而不是SPARQ

  • 我很难找到任何类型的文档,说明如何在我的模型中查询更复杂的属性。 关于这个查询创建是如何工作的,有没有更好的文档?

  • 基础Spring Data repository内置的查询生成器机制对于创建实体仓库的约束查询是有用的,它会从方法名中去掉find…By,read…By,query…By,count…By和get…By这些前缀并解析剩下的内容.这些前缀还能包含更多的表达式例如Distinct,设置一个distinct标志并在查询中创建它,然后第一个By的动作就像一个分隔符来表明查询实际标准的开始。最基本的方式你可

  • 问题内容: 我正在尝试使用耶拿创建一个SPARQL查询来查询DBpedia。 当我将查询与独立工具(Twinkle)一起使用时,该查询正在运行,但是当我将其插入此Java代码时,它将返回一个空集。 有什么想法我做错了吗? 问题答案: 问题是你的条款。删除它,一切都很好。有了该子句,我怀疑端点将查询限制在具有该名称的图上,但是不存在这样的图,因此没有结果。 令人困惑的是,查询似乎可以在http://

  • jpaQuery.from(tableA,tableb)。(如何编写以下条件)。id=表格b。id() 如何使用查询dsl编写左向外连接?? 这是编写eq连接的示例代码 JPA query query = new JPA query(em); Q表A = Q表A.QTableB 表 B = QTableB 表 B query.from(tableA, tableB). where(tableA.i

  • 问题内容: 我需要用一个查询插入多行(行数不是常数),所以我需要像这样执行查询: 我知道的唯一方法是 但我想要一些更简单的方法。 问题答案: 我构建了一个程序,该程序将多行插入到位于另一个城市的服务器上。 我发现使用此方法的速度大约是的10倍。就我而言,tup是一个包含约2000行的元组。使用此方法大约花了10秒钟: 使用此方法需要2分钟: