2012-11-27 27 views
5

Trong Neo4j, nếu tôi xóa nút được lập chỉ mục, tôi có phải xóa nút đó khỏi chỉ mục trước hoặc chỉ mục sẽ được cập nhật tự động không?Xóa các nút được lập chỉ mục trong Neo4j

Đây là một nhỏ (chưa được kiểm tra) ví dụ:

val index = graphDb.index() 
val someIdx = index.forNodes("someIdx") 
val someNode = graphDb.createNode() 
someIdx.add(someNode, "key", "value") 

Và sau đó:

//remove from someIdx??? 
someNode.delete() 

Trả lời

9

Khi bạn xóa một nút, bạn phải gỡ bỏ các chỉ số đầu tiên. Nếu bạn muốn xóa tất cả các đề cập của một nút khỏi chỉ mục, hãy xem bên dưới:

IndexManager indexManager = db.index(); 
    Index<Node> index = indexManager.forNodes("indexName"); 
    index.remove(node); 
+0

Điều gì sẽ xảy ra khi bạn cố gắng xóa nút qua truy vấn chỉ mục? – fynn

+0

Bạn nhận được một ngoại lệ, tôi không thể báo giá chính xác, nhưng đó là điều gì đó về bạn đang cố gắng truy cập một nút không còn tồn tại nữa. – Nicholas

+0

Thx để được trợ giúp ... – fynn

Các vấn đề liên quan