2015-09-08 59 views
2

由於我對Neo4J相對較新,因此我想知道是否可以對存儲的數據施加用戶定義的數據完整性約束。Neo4j中用戶定義的數據完整性約束

該手冊說可以施加UNIQUE約束條件並且here Michael Hunger指出在當前的RC NOT NULL約束條件下已經添加了。

我想知道是否有可能以某種方式來定義像「每個標籤X的節點必須與標籤Y有關係」這樣的約束,或者以某種方式強加一個類型系統,可能帶有類型層次結構和一切。 DBMS會自動檢查這些約束,就像許多舊式(關係型)數據庫系統一樣。

乾杯!

+0

查看@ stefan-armbruster [UUID擴展名](https://github.com/sarmbruster/neo4j-uuid),它註冊了一個執行som「enforcing」的TransactionEventHandler,在這種情況下,每個節點都獲得一個UUID 。這已經過了幾年了,但這是一個很好的例子,可以從中學習。 – jjaderberg

+0

我會,非常感謝:) – Alberto

回答

1

不,不可能像傳統的RDBMS一樣具有相同的功能,至少不是開箱即用的。

你可以編寫自己的Unmanaged Extensions,它可以爲你處理。您可以在article中找到如何做到這一點的基本信息。

我不知道任何現有的「插件」。未來GraphAware Enterprise應該帶來「模式執行」。

+0

非常感謝,Mic Tech :) – Alberto