2.4.1 創建圖數據
單擊“電影關系圖”實例引導頁的右側換頁箭頭,可以看到一些實例代碼,其中包含多個帶有CREATE關鍵字的Cypher語句。單擊代碼塊,代碼塊將自動填入到命令行輸入區。單擊運行命令按鈕,圖數據就創建完成了。
下面將對這些創建語句進行分析說明,先不必完全弄懂這些命令,只需要了解它們的目的即可,關于這些Cypher語句的具體學習,在后續章節會有詳細介紹。
【程序2-1】創建電影節點

上面的Cypher語句使用CREATE指令創建了一個Movie節點,這個節點上帶有三個屬性{title:'The Matrix', released:1999, tagline:'Welcome to the Real World'},分別表示這個電影的標題:The Matrix、發布時間:1999、宣傳詞:Welcome to the Real World。
上述Cypher語句運行后,將會在數據庫中創建一個Movie節點,在數據庫中的存儲形態如圖2-54所示。

圖2-54 Movie節點
【程序2-2】創建人物節點

上面代碼使用CREATE指令創建了一個Person節點,節點帶有兩個屬性{name:'Keanu Reeves',born:1964}。
在后續的6行代碼中都使用了同樣的CREATE指令,分別創建了人物:Carrie、Laurence、Hugo、LillyW、LanaW和JoelS。
【程序2-3】創建演員、導演關系

上面代碼中除了使用CREATE指令外,還使用了箭頭運算符,如:(Keanu)-[:ACTED_IN{roles:['Neo']}]->(TheMatrix),這一行的意思是創建一個演員參演電影的關系,演員Keanu以角色roles:['Neo']參演([:ACTED_IN])到電影TheMatrix中。代碼前4行都是創建演員參演電影關系的指令。
第5行指令:(LillyW)-[:DIRECTED]->(TheMatrix),意思是創建導演與電影的關系,即LillyW導演了([:DIRECTED])電影TheMatrix。
上面的指令運行完后,數據庫中會有如圖2-55所示的存儲形態。

圖2-55 導演、電影關系圖
這樣數據庫中一個電影、演員、導演、制片商的關系就創建出來了。在后面的代碼中用了同樣的指令分別創建了電影:The Matrix Revolutions、The Devil’s Advocate、A Few Good Men、Top Gun、Jerry Maguire等,然后又創建了與這些電影相關的演員、導演、制片商及其他們之間的關系。
通過上述的創建指令就完成創建“電影關系圖”實例了。