架构正确时,添加顶点会给出“未定义的列名”错误

时间:2018-09-20 08:11:15

标签: datastax datastax-enterprise gremlin datastax-enterprise-graph

我遇到了阻止问题。

在我的DSE工作室中,我开始修改自己的架构:

schema.propertyKey("longitude").Double().single().ifNotExists().create()
schema.propertyKey("latitude").Double().single().ifNotExists().create()
schema.vertexLabel("Locality").properties('longitude','latitude').add()

然后我使用schema.vertexLabel("Locality").describe()进行检查:

  

schema.vertexLabel(“ Locality”)。properties([...],“经度”,   “纬度”).create()

没关系。

但是当我尝试添加一个顶点时:

g.addV(label, 'Locality', [...], 'longitude', 47.3510905, 'latitude', 0.6622524)

我收到以下错误:

  

org.apache.tinkerpop.gremlin.driver.exception.ResponseException:   未定义的列名称纬度

我怀疑Cassandra结构不会与图模式同步。

您有解决此问题的解决方案吗?

精度:我正在使用DSE 5.1。

1 个答案:

答案 0 :(得分:1)

这可能是由于使用g.addV()时语法不正确造成的。您正在使用graph.addVertex()的语法。对于g.addV(),您的通话应如下所示:

g.addV('Locality').property([...]).property('longitude', 47.3510905).property('latitude', 0.6622524)

请注意使用多个property()步骤,每个属性集一个。

有关文档,请参阅此处的DSE 5.1文档: https://docs.datastax.com/en/dse/5.1/dse-dev/datastax_enterprise/graph/using/insertDataGremlin.html?hl=addv