2016-12-09 165 views
0

嘗試在neo4j中創建關係,但失敗。 我有2個節點,服務器和虛擬機。現在我想創建這兩個節點之間的關係。無法在Neo4j中創建關係

MATCH (s:Server {name:"DHAAPP01"}) 
RETURN s.name; 
MATCH (v:VirtualMachine {virtualhost:"DHAAPP01"}) 
RETURN v.name,v.virtualhost; 

然後我試圖創建創建命令

CREATE (v:VirtualMachine)-[r:DEPENDS]->(s:Server) 

即使創建關係,它仍然無法顯示在graphDB關係的關係。 我也嘗試用命令匹配2個模式,但也失敗了。

MATCH (v:VirtualMachine)-[r:DEPENDS]-(s:Server) 
WHERE v.name= 'DHA' 
AND s.name = 'DHAAPP01' 
RETURN v.name, v:VirtualMachine; 

希望你的幫助和建議我的命令有什麼問題嗎?感謝您的幫助

回答

0

您可能無意中創建了一個新的:VirtualMachine和new:Server節點。這就是你的第一個CREATE命令所做的,我很確定這不是你想要的。

用於創建特定節點之間的關係,只是配合他們,並使用該變量的比賽中他們之間的關係,如果你需要他們返回,返回變量,包括對關係的變量:

MATCH (s:Server {name:"DHAAPP01"}) 
MATCH (v:VirtualMachine {virtualhost:"DHAAPP01"}) 
MERGE (v)-[r:DEPENDS]->(s) 
RETURN v, r, s 
+0

我對你的查詢所做的事情進行分析。查詢中的CREATE子句創建了以下模式:兩個新節點及它們之間的關係。我相應地更新了我的答案。 – InverseFalcon