当架构正确时,添加顶点会出现 "Undefined column name" 错误

Add vertex gives a "Undefined column name" error while schema is correct

我 运行 遇到了阻塞问题。

在我的 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([...], "longitude", "latitude").create()

所以没关系。

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

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

我收到以下错误:

org.apache.tinkerpop.gremlin.driver.exception.ResponseException: Undefined column name latitude

我怀疑 Cassandra 结构未与图形模式同步。

你有办法解决这个问题吗?

精度:我使用的是 DSE 5.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