Можно ли создать ограничение с использованием регулярных выражений в Neo4j? - PullRequest
0 голосов
/ 29 августа 2018

Я хотел бы спросить вас, возможно ли создать ограничение в Neo4j (шифр) с использованием регулярных выражений. Точнее говоря, у меня есть много узлов, которые служат в качестве IP-адресов, и я хотел бы убедиться, что каждый узел (свойство ip_address) имеет надлежащий формат для IP-адреса. Если ответ «нет», есть ли обходной путь? Единственное, что мне приходит в голову, это проверить каждый узел на языке программирования, прежде чем добавлять их в Neo4j

.

1 Ответ

0 голосов
/ 29 августа 2018

В настоящее время эта форма недоступна в простой в применении форме ограничений.

Хотя рекомендуемый подход, когда вам нужно определенное форматирование, заключается в том, чтобы обрабатывать это на прикладном уровне, вы можете создать триггер, который мог бы проверять, имеет ли вновь добавленный узел заданной метки правильное форматирование, и выходить из строя, если нет.

Однако это требует дополнительной работы и тестирования.

TransactionEventHandlers используются для реализации этого. Вот Java-интерфейс TransactionEventHandler , который вам нужно реализовать.

В качестве альтернативы вы можете использовать триггеры в процедурах APOC для реализации этого с Cypher.

...