comment créer des contraintes uniques sur deux propriétés dans neo4j ?
dcsan
J'utilise des nœuds comme éléments de chemin intermédiaire, mais je veux m'assurer que le début/la fin sont uniques. Comment créer une contrainte qui nécessite la vérification de DEUX valeurs ?
Je peux définir des valeurs individuelles, mais je ne vois pas la syntaxe d'une contrainte en deux parties.
neolib.run_query(
"""CREATE CONSTRAINT
uSource
if not exists
ON (m:route) ASSERT m.source IS UNIQUE""")
neolib.run_query(
"""CREATE CONSTRAINT
uTarget
if not exists
ON (m:route) ASSERT m.target IS UNIQUE""")
âXmoůŜ
Il a cette documentation:
https://neo4j.com/docs/cypher-manual/current/administration/constraints/#query-constraint-node-key
CREATE CONSTRAINT [constraint_name] [IF NOT EXISTS]
ON (n:LabelName)
ASSERT (n.propertyName_1,
n.propertyName_2,
…
n.propertyName_n)
IS NODE KEY
[OPTIONS "{" option: value[, ...] "}"]
FOR EXAMPLE:
CREATE CONSTRAINT uSourceTarget IF NOT EXISTS ON (m:route) ASSERT (m.source, m. target) IS NODE KEY
NB : Uniquement applicable pour l'édition Entreprise (PAS l'édition communautaire)