2015-07-02 2 views
2

У меня проблема с отношениями на Neo4j. У меня есть 3 файла с расширением .csv для загрузки в Neo4j. Первые два файла - это узлы, которые я уже и успешно создал. Файлы: forum_0.csv & person_0.csv и они получили эти заголовки:Свойства отношений в Neo4j

idForum | titleForum | creationDateForum (forum_0.csv)

idPerson | firstNamePerson | lastNamePerson | ... (person_0.csv)

Я успешно создаю два узла, но теперь мне нужно создать связь между этими узлами. Для этого нужно загрузить третий файл, forum_hasMember_person_0.csv (и этот файл получил этот заголовок: idForum | idPerson | joinDateFHMP)

и моя проблема в данный момент. Я загружаю третий файл с этим кодом:

USING PERIODIC COMMIT 
LOAD CSV WITH HEADERS 
FROM ".../forum_has_Member_person_0.csv" AS row 
FIELDTERMINATOR "|" 
MATCH (forum:Forum(idForum: row.idForum)) 
MATCH (person:Person(idPerson: row.idPerson)) 
MERGE (forum)-[:FOR_HASMEMBER_PRS]->(person); 

Как я могу создать FOR_HASMEMBER_PRS связь со свойством «joinDateFHMP»? Это единственное, что осталось от создания отношений. Как я могу это решить?

ответ

1

делает эту работу за вас? Я также исправил некоторые опечатки в запросе вашего вопроса.

USING PERIODIC COMMIT 
LOAD CSV WITH HEADERS 
FROM ".../forum_has_Member_person_0.csv" AS row 
FIELDTERMINATOR "|" 
MATCH (forum:Forum {idForum: row.idForum}) 
MATCH (person:Person {idPerson: row.idPerson}) 
MERGE (forum)-[:FOR_HASMEMBER_PRS {joinDateFHMP: row.joinDateFHMP}]->(person); 
+0

Yeahh !! Ваше решение работает! Спасибо mate;) Может ли задать еще один вопрос об отношениях в Neo4j? –

+0

Вы всегда можете задать новый вопрос. – cybersam

+0

Ok @cybersam Я буду следовать вашему совету! Еще раз спасибо! –

2

Я люблю положить идентификатор на отношения, а затем с помощью SET:

USING PERIODIC COMMIT 
LOAD CSV WITH HEADERS 
FROM ".../forum_has_Member_person_0.csv" AS row 
FIELDTERMINATOR "|" 
MATCH (forum:Forum {idForum: row.idForum}) 
MATCH (person:Person {idPerson: row.idPerson}) 
MERGE (forum)-[r:FOR_HASMEMBER_PRS]->(person) 
SET r.joinDateFHMP = row.joinDateFHMP; 
+0

Эта ошибка возникает при выполнении кода. Недопустимый вход '(': ожидается символ идентификатора, пробел, NodeLabel, карта свойств, ')' или шаблон отношения (строка 5, столбец 18 (смещение: 182)) "MATCH (форум: форум : row.idForum)) " ^ Neo.ClientError.Statement.InvalidSyntax Как я могу это решить? –

+0

Ах, я скопировал ваш код. Он имеет синтаксические ошибки. Ред. –

+0

Мне нужно попробовать ваше решение, но я должен сказать, что предыдущий ответ от @cybersam отлично работает для меня. И кстати, спасибо за помощь! –

Смежные вопросы