2016-03-23 1 views
0

Ich habe gerade einen neuen Ordnernamen erstellt-Test und Neo4j Server gestartet. Wenn ich die unten stehende Skript ausführen, bekomme ich die Fehler - „Neo.ClientError.Statement.EntityNotFound“ und eine Nachricht „Knoten mit der ID 0“Neo.ClientError.Statement.EntityNotFound

start root=node(0) 
create 
    (tatham {Name:'Tatham'}), 
    (tom {Name:'Tom'}), 
    (pat {Name:'Pat'}), 
    (chrissy {Name:'Chrissy'}), 
    (sailing {Name:'Sailing'}), 
    (mtb {Name:'MTB'}), 
    (rowing {Name:'Rowing'}), 
    (tennis {Name:'Tennis'}), 
    root-[:HAS_USER]->tatham, 
    root-[:HAS_USER]->tom, 
    root-[:HAS_USER]->pat, 
    root-[:HAS_USER]->chrissy, 
    tatham-[:FRIEND]->tom, 
    tom-[:FRIEND]->pat, 
    tatham-[:FRIEND]->chrissy, 
    tatham-[:LIKES]->sailing, 
    tatham-[:LIKES]->mtb, 
    tom-[:LIKES]->sailing, 
    pat-[:LIKES]->mtb, 
    tom-[:LIKES]->rowing, 
    pat-[:LIKES]->tennis, 
    chrissy-[:LIKES]->mtb, 
    chrissy-[:LIKES]->sailing 

Können Sie freundlich dieses Problem zu beheben mir heiß helfen

Antwort

0

A @WilliamLyon angegeben:

  • Eine neue DB hat keine Knoten, und hat daher keine Knoten mit der ID von 0.
  • Die START Klausel jetzt veraltet.

Sie verwenden offenbar eine sehr alte Version von neo4j. Wenn möglich, sollten Sie die neueste Version installieren.

Zusätzlich:

  • Knoten jetzt muss immer in Klammern angegeben werden.

Probieren Sie folgendes statt, die mit Ihrer Version von Neo4j sowie die neuesten Versionen funktionieren soll:

CREATE 
    (tatham {Name:'Tatham'}), 
    (tom {Name:'Tom'}), 
    (pat {Name:'Pat'}), 
    (chrissy {Name:'Chrissy'}), 
    (sailing {Name:'Sailing'}), 
    (mtb {Name:'MTB'}), 
    (rowing {Name:'Rowing'}), 
    (tennis {Name:'Tennis'}), 
    (root)-[:HAS_USER]->(tatham), 
    (root)-[:HAS_USER]->(tom), 
    (root)-[:HAS_USER]->(pat), 
    (root)-[:HAS_USER]->(chrissy), 
    (tatham)-[:FRIEND]->(tom), 
    (tom)-[:FRIEND]->(pat), 
    (tatham)-[:FRIEND]->(chrissy), 
    (tatham)-[:LIKES]->(sailing), 
    (tatham)-[:LIKES]->(mtb), 
    (tom)-[:LIKES]->(sailing), 
    (pat)-[:LIKES]->(mtb), 
    (tom)-[:LIKES]->(rowing), 
    (pat)-[:LIKES]->(tennis), 
    (chrissy)-[:LIKES]->(mtb), 
    (chrissy)-[:LIKES]->(sailing); 

Der root Knoten automatisch das erste Mal erstellt wird es von der Abfrage aufgetreten und dann erneut verwendet.

0

Das Problem ist die erste Zeile Ihrer Cypher-Abfrage: start root=node(0). Diese Aussage sagt "Finde einen Knoten mit der ID 0", aber wenn du noch keine Daten eingefügt hast, ist kein Knoten zu finden, also der Fehler.

start wurde veraltet und ist nicht mehr erforderlich, so dass Sie es einfach entfernen können.