0

我使用 OrientDB 的图形版本。现在我创建了一个无模式类,我想在其中索引一个变量。这个变量需要首先成为一个属性。但是,当我尝试创建此属性 - 类型为字符串(或二进制,或其他)时 - 它会响应:

com.orientechnologies.orient.core.exception.OSchemaException: The database contains some schema-less data in the property 'clazz.clazz_name' that is not compatible with the type STRING. Fix those records and change the schema again [ONetworkProtocolHttpDb]

所以我需要修复一些东西,但是什么?哪些字符对于一个变量成为一个属性是非法的,以便它可以被索引?(顺便说一句,列表也不是一种选择)

4

1 回答 1

1

我确实有一个问题。我创建了一个超类,必须在其中创建属性。其中一个子类插入了一个列表而不是一个字符串。所以在查询所有子类型的顶点时

final Iterable<Vertex> iterable = this.graph.getVerticesOfClass("clazz");

vertex.getProperty("clazz_name").getClass().getName()我在看到 OLinkedList的地方打印了所有类型的clazz_name。重新插入这些顶点解决了我的问题。

于 2015-02-19T09:50:09.030 回答