Ich bin neu in Neo4j und ich versuche, Daten aus zwei CSV-Dateien zu importieren, aber ich bin nicht in der Lage, es zu tun. Die beiden CSV-Dateien haben die folgende Struktur:So importieren Sie Daten aus CSV-Datei
Master.csv:
ID NAME LASTNAME COLLEGE
01 aaa bbb ABC
02 xxx yyy BCE
award.csv:
playerID award year
01 best_player 2010
01 rookie_of_the_year 2011
02 best_player 2012
Wie kann ich Knoten für pl Ayers und Auszeichnungen und wie kann ich sie verbinden?
Ich habe versucht, diesen Code verwenden: (aber es ist offensichtlich nicht funktioniert)
CREATE CONSTRAINT ON (a:PLAYER) ASSERT a.id IS UNIQUE;
CREATE CONSTRAINT ON (b:AWARD) ASSERT b.award IS UNIQUE;
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "File:///master.csv" as line fieldterminator ';'
CREATE (:PLAYER {id:line.playerID, name:line.firstName, lastName:line.lastName});
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "File:///award.csv" as line fieldterminator ';'
MATCH (player:Player {id:line.playerID})
MERGE (award:AWARD {award:line.award})
CREATE (player)-[r:won]->(award)
set r += {year:line.year}
Wenn ich auch Knoten für Hochschulen hinzufügen würde, ist es richtig?
CREATE CONSTRAINT ON (c:COLLEGE) ASSERT c.name IS UNIQUE;
USING PERIODIC COMMIT
LOAD CSV WITH HEADERS FROM "file:///master.csv" as line fieldterminator ';'
WITH line
MATCH (player:PLAYER {id:line.playerID})
MERGE (college:COLLEGE {name:line.college}})
CREATE (player)-[:studied]->(college)
Dank
* ... MATCH (Spieler: Spieler) ... – manfr27
Alles sieht gut aus, das Problem könnte sein, dass Sie versuchen, es in einer einzigen Transaktion auszuführen ... Sie müssen jede Einschränkung in einer separaten Transaktion erstellen und dann die erste LOAD CSV und die zweite separat ausführen –
Ja, ich führe jede Abfrage einzeln aus. Könnte das Problem auf den CSV-Dateien sein? – manfr27