· neo4j cypher

Neo4j: Cypher - Property values can only be of primitive types or arrays thereof.

I ran into an interesting Cypher error message earlier this week while trying to create an array property on a node which I thought I’d share.

This was the Cypher query I wrote:

CREATE (:Person {id: [1, "mark", 2.0]})

which results in this error:

Neo.ClientError.Statement.TypeError
Property values can only be of primitive types or arrays thereof.

We actually are storing an array of primitives but we have a mix of different types which isn’t allowed. Let’s try coercing all the values to strings:

CREATE (:Person {id: [value in [1, "mark", 2.0] | toString(value)]})

Added 1 label, created 1 node, set 1 property, completed after 4 ms.

Success!

  • LinkedIn
  • Tumblr
  • Reddit
  • Google+
  • Pinterest
  • Pocket