Ich habe gerade Neo4j 3.0.0 vor etwa zehn Minuten heruntergeladen und installiert. Ich erstelle eine Graphdatenbank mit Neo4j.'Hier kann kein Knoten mit Beschriftungen oder Eigenschaften erstellt werden. Die Variable ist bereits in diesem Zusammenhang 'in Neo4j
Wenn ich versuche, auf einmal 3 Anweisungen ausgeführt werden, erhalte ich eine Fehlermeldung:
Can't create node 'famA' with labels or properties here. The variable is already declared in this context
(Dies ist, wo ich in einem Definitionsknoten zu setzen bin versucht).
Ich bin mir nicht sicher, was das Problem ist. Mein erster Gedanke war, dass ich Variablen über Blöcke hinweg mitnehmen muss, da ich dieses Problem schon früher hatte, aber das scheint ein anderer Fall zu sein (Entschuldigung, ich bin noch neu bei Neo4j).
Betrachtet man, was mit famA
vor sich geht, wird es nur einmal deklariert, und es scheint, als wäre die Syntax in Ordnung? Es ist alles in Ordnung hier:
// Create the definition node:
CREATE
(famA:Family {family_ID:'A'})
WITH famA
MATCH (a:Person {name:"a"})-[*]-(b:Person)
MERGE (famA:Family)<-[:FAMILY]-(a)
MERGE (famA:Family)<-[:FAMILY]-(b)
Ich mag auch darauf hinweisen, mein Skript feinen letzte Woche gearbeitet - vielleicht ist das ein Problem mit einer neuen Version?
Hat jemand irgendwelche Ideen? Vielen Dank.
Hier ist der Code die db zu erstellen:
// First family: family_ID = A. This family has 3 members with Alzheimers who are not alive, and more than half of them are Left handed
CREATE
( a:Person {name: 'a', id:'1', Gender:'Male', Diagnosis: 'Alzheimers', `Is Alive?`: 'No', Handedness: 'Left', `Risk Score`: 'PURPLE'}),
(aSP:Person {name: 'aSP', id:'2', Gender:'Female', Diagnosis: 'Alzheimers', `Is Alive?`: 'No', Handedness: 'Left', `Risk Score`: 'GIRAFFE'}),
( b:Person {name: 'b', id:'3', Gender:'Male', Diagnosis: 'Normal', `Is Alive?`: 'No', Handedness: 'Left', `Risk Score`: 'PURPLE'}),
(bSP:Person {name: 'bSP', id:'4', Gender:'Female', Diagnosis: 'Alzheimers', `Is Alive?`: 'No', Handedness: 'Right', `Risk Score`: 'GIRAFFE'}),
(bSib:Person {name: 'bSib', id:'5', Gender:'Female', Diagnosis: 'MCI', `Is Alive?`: 'No', Handedness: 'Left', `Risk Score`: 'GIRAFFE'}),
( c:Person {name: 'c', id:'6', Gender:'Male', Diagnosis: 'MCI', `Is Alive?`: 'No', Handedness: 'Right', `Risk Score`: 'PURPLE'}),
(cSib:Person {name: 'cSib', id:'7', Gender:'Female', Diagnosis: 'Alzheimers', `Is Alive?`: 'Yes', Handedness: 'Left', `Risk Score`: 'GIRAFFE'})
CREATE
(a)-[:SPOUSE]->(aSP),
(b)-[:CHILD]->(a),
(b)-[:CHILD]->(aSP),
(b)-[:SPOUSE]->(bSP),
(bSib)-[:SIBLING]->(b),
(bSib)-[:CHILD]->(aSP),
(c)-[:CHILD]->(b),
(c)-[:CHILD]->(bSP),
(cSib)-[:SIBLING]->(c),
(cSib)-[:CHILD]->(bSP)
// Create the definition node:
CREATE
(famA:Family {family_ID:'A'})
WITH famA
MATCH (a:Person {name:"a"})-[*]-(b:Person)
MERGE (famA:Family)<-[:FAMILY]-(a)
MERGE (famA:Family)<-[:FAMILY]-(b)