Wenn Sie Neo4j bitten, einen Index zu erstellen, der bereits existiert, wird keine Ausnahme ausgelöst, was für meinen Zweck gut erscheint.Cypher: Einen bereits existierenden Schema-Index erstellen
session.run("CREATE INDEX ON :User(email)");
Frage 1:
Aber wie Neo4j ist der Umgang mit dieser unter der Haube? Löscht es den Index, erstellt ihn neu oder ignoriert er die Abfrage vollständig, da der Index bereits existiert?
Ich würde gerne wissen, weil ich einige CRUD-Operationen habe und ich möchte das Schema für meine Knoten in dem Moment definieren, in dem ich sie erstelle, was bedeutet, "CREATE INDEX" und so viertens aufzurufen. Der Nachteil besteht darin, dass für jeden neuen Knoten redundante Aufrufe erstellt werden, um einen Index zu erstellen, was in Ordnung ist, wenn sie ignoriert werden, wenn der Index bereits existiert.
Frage 2:
ich folgende Arbeiten bemerkt, auch wenn keine Knoten mit der Bezeichnung Benutzer existieren noch (Bedeutung I Etiketten und Index vor dem zugehörigen Knoten anlegen zu können).
CREATE INDEX ON :User(email)
Ich bin neu in Neo4j und verwenden, um die RDBMS Welt, wo man nicht einen Index für eine Spalte erstellen, die nicht existiert. Habe ich Recht, dass das Erstellen von Indizes und Beschriftungen, bevor ich die Knoten mit diesen Beschriftungen und Eigenschaften erstellt habe, keine unvorhergesehenen Probleme verursachen sollte?