2017-01-01 5 views
0

존재하지 않을 수도있는 문서를 지정하여 가장자리를 만들 수 있습니까? 그렇지 않을 때 만들 수 있습니까? 예를 들어ArangoDB에서 모서리와 정점을 동시에 생성 할 수 있습니까?

, 내가 같은 쿼리를 실행하는 경우 : 다른 어느 문서/일 또는 문서/존재하지 않는 경우

INSERT {_to: 'docs/something', _from: 'docs/other'} IN edges 

를, 나는 오류가 발생합니다. 존재하지 않는 문서/무언가 및 문서/기타 (아마도 빈 개체로)를 만들 수있는 옵션이 있습니까?

참고 : 나는 대량 가져 오기를하고 문서없이 가장자리 를 만들 수 있습니다 - _to 및/또는 _from 단지 어디 이어질 -하지만 난 오히려 빈 문서를 관리 그래프의 기능

답변

1

하나를 만들 것 그래프 무결성을 보장합니다. 따라서 the edge management facility을 사용하면 ArangoDB에서 끝나며 댕글 링 가장자리 삽입을 허용하지 않습니다.

그러나 ArangoDB 그래프 기능은 문서 기능 위에 계층화되어 있습니다. 문서 기능은 그래프 무결성에 영향을주지 않습니다. 따라서 inserting edges referencing non existant vertices is possible this way 및 에지 컬렉션이있는 경우 예제 쿼리가 작동합니다.

그러나

, quoting the insert documentation :
Each INSERT operation is restricted to a single collection, 
and the collection name must not be dynamic. 
Only a single INSERT statement per collection is allowed per AQL query, 
and it cannot be followed by read operations that access 
the same collection, by traversal operations, 
or AQL functions that can read documents. 

그래서 당신은 같은 쿼리에서 AQL 동적으로 정점을 만들 수 없습니다.

ArangoDB 2.8에서는 정점 컬렉션이 먼저 존재해야합니다.