我知道您可以编写可以从Cypher调用的扩展,但我真的想避免编写Java。我在想类似于SQL Server存储过程的东西。这是可能的,还是我可以编写一个Cypher查询并将其包装在一些最小的Java中以使当前的功能有效?
答案 0 :(得分:1)
除了@InverseFalcon的答案之外,图形中确实没有Transact-SQL或类似PL / SQL的语言。
我所知道的最接近的语言是SAP的GraphScriph:
GraphScript是一种特定于域的只读图形查询语言,专为高级图形分析任务而设计,可简化自定义复杂图形算法的规范。
警告:它仅在SAP HANA Graph产品中提供,并且正如报价所述,它是只读的。有关详细信息,请参阅presentation slides和paper。
如果由于其冗长而希望避免使用Java,但在JVM上编写通用代码时可能会很好,那么您可能需要尝试使用Kotlin语言。但是,使用除Java之外的任何其他内容往往会引入一些集成问题(跨所有基于JVM的应用程序,特别是Neo4j),因此请准备好解决这些问题。有一个example project on GitHub for Neo4j Kotlin procedures可以帮助您入门。注意事项:尽管Eclipse IDE中有基本的Kotlin支持,但它与IntelliJ版本并不相同。所以你可能需要一个IntelliJ许可证。
答案 1 :(得分:0)
如果您有权访问APOC程序,则可以使用apoc.cypher.run()
(或apoc.cypher.doIt()
进行写查询)来执行字符串密码查询。
您始终可以按照教程创建自己的过程,并使用硬编码查询调用相应的APOC cypher运行过程。