使用spring-data-neo4j在Neo4j中更改属性数据类型

时间:2014-06-27 21:49:47

标签: neo4j spring-data-neo4j

对于具有任何属性(索引或未索引)的NodeEntity,由于某些用例,我希望将数据类型从Integer更改为String。
我只是在已定义的NodeEntity类中更改了数据类型。新数据成功插入到数据库中,属性的数据类型为新设置的(ie.String)。但是,此更改之前已存在于数据库中的节点的属性的数据类型仍为旧数据类型(即整数)。
有没有办法修改数据库中存在的所有节点的数据类型?

1 个答案:

答案 0 :(得分:4)

Cypher有以下几个功能:

  • toInt:将字符串转换为整数/长值
  • toFloat:将字符串转换为浮点值
  • str:将某些内容转换为字符串

通过它,您可以轻松修改现有属性的数据类型。假设您有一个Person类型的实体,它具有数字zipCode属性。您想将zipCode转换为字符串:

MATCH (node:Person)
SET node.zipCode = str(node.zipCode)

如果您拥有大量此类型的实体,请确保您的交易量不会因使用SKIPLIMIT而变得过大。