Я написал запрос, который создает 2 новых узла, если он существует, тогда он просто обновляет свойства и добавляет связь между ними.
Впервые при созданииузлы и отношения все идет хорошо.
// This is the first run
MERGE (Kunal:PERSON)
ON CREATE SET
Kunal.name = 'Kunal',
Kunal.type = 'Person',
Kunal.created = timestamp()
ON MATCH SET
Kunal.lastUpdated = timestamp()
MERGE (Bangalore: LOC)
ON CREATE SET
Bangalore.name = 'Bangalore',
Bangalore.type = 'Location',
Bangalore.created = timestamp()
ON MATCH SET
Bangalore.lastUpdated = timestamp()
MERGE (Kunal)-[r1:LIVES_IN]->(Bangalore)
RETURN *
Здесь я добавляю узел Кунал (узел)кто живет в (родстве) Бангалор (узел).В первый раз все нормально.
В следующий раз я добавляю другой узел следующим образом:
// Next time
MERGE (John:PERSON)
ON CREATE SET
John.name = 'John',
John.type = 'Person',
John.created = timestamp()
ON MATCH SET
John.lastUpdated = timestamp()
MERGE (Bangalore: LOC)
ON CREATE SET
Bangalore.name = 'Bangalore',
Bangalore.type = 'Location',
Bangalore.created = timestamp()
ON MATCH SET
Bangalore.lastUpdated = timestamp()
MERGE (John)-[r1:LIVES_IN]->(Bangalore)
RETURN *
Я добавляю узел Джон кто живет в (отн.) Бангалор (узел).
Но проблема здесь, он снова принимает то же значение узла из предыдущего оператора слияния.
Кто-нибудь может это объяснить?
Также, каково решение для этого, если, скажем, если мы выполняемПриведенные выше запросы объединить внутри цикла с использованием драйвера Python.
Не могу найти ничего по этому поводу, хотя