Neo4j APOC 删除所有触发器

Neo4j APOC remove all triggers

我想实现 Cypher 查询并使用 APOC 函数删除所有现有触发器:

我正在尝试以下查询:

CALL apoc.trigger.list() yield name 
CALL apoc.trigger.remove(name) yield name, installed

但失败并出现以下错误:

Neo.ClientError.Statement.SyntaxError: Query cannot conclude with CALL (must be RETURN or an update clause) (line 1, column 37 (offset: 36)) "CALL apoc.trigger.list() yield name CALL apoc.trigger.remove(name) yield name, installed" ^

如何正确实现这个查询?

如错误所述,查询不能以 CALL 结束(除非 CALL 是查询中的唯一语句)。它需要写操作(MERGE、CREATE、SET、REMOVE、DELETE)或 return.

如果您想 return 调用产生的值,您可以在末尾添加 RETURN name, installed。否则,如果您真的不关心 return 编辑的内容,RETURN DISTINCT true 应该可以解决问题。

哦,你可能想在你的一个或另一个 YIELD 中使用别名 name,因为你可能会收到变量名冲突的错误。