2015-01-04 13 views
5

Come creare un Edge univoco in Orientdb.Come creare in Orientdb il bordo per essere univoci

La soluzione che mi è venuta:

  • eliminare il bordo
  • creare di nuovo

ma non è bello. Edge non ha proprietà.

Esempio:

create edge is_friend from #12:0 to #12:3 

e se lo chiamo di nuovo, ci dovrebbe essere un errore come quando si effettua un indice univoco.

Grazie

enter image description here

risposta

8

crea un vincolo sul bordo fuori e nei campi. Per maggiori informazioni:

http://www.orientechnologies.com/docs/last/orientdb.wiki/Graph-Schema.html#constraints

Nel tuo caso provare questo:

CREATE INDEX UniqueEdges ON is_friend (out, in) unique 
+0

Mi dispiace, ma non capisco dal doc come fare un bordo unico. Gli esempi sono per la classe Vertex .. [non ho problemi a rendere un campo unico per i vertici, è facile ...]. Ho aggiornato la mia risposta con un'immagine se aiuta ... – OWADVL

+3

Ottengo com.orientechnologies.orient.core.index.OIndexException: Indice con nome: 'UniqueEdges' non può essere creato sulla classe: 'is_friend' perché campo: ' out 'è assente nella definizione della classe. – OWADVL

+3

A destra, crea entrambe le proprietà "in" e "out" nella classe "is_friend". – Lvca