You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Neo4j 4.1中Cypher约束查询报「Invalid input 'F'」问题排查

问题分析与解决

1. 核心问题:Cypher语法不符合Neo4j 4.1规范

你写的约束创建语句用了FOR和REQUIRE关键字,但Neo4j 4.1版本的唯一约束语法不支持这两个关键字,解析器遇到FOR的首字母F时直接触发语法错误。

Neo4j 4.1创建唯一约束的正确语法是:

CREATE CONSTRAINT n_tester ON (n:Test) ASSERT n.Tester IS UNIQUE

2. 换行不影响语法执行

Cypher对语句换行没有强制要求,只要语法正确,换行或不换行都能正常解析,所以你添加换行后仍报错,和换行无关。

3. PHP json_encode的潜在问题排查

如果是通过PHP将Cypher语句编码后发送给Neo4j,需要检查两点:

  • 确认编码后的语句和原语句完全一致,避免json_encode对特殊字符(比如引号、反斜杠)做了不必要的转义。
  • 排查是否在字符串传递过程中出现截断,导致Neo4j接收到不完整的语句,引发语法错误。

内容的提问来源于stack exchange,提问作者Antony

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 18:43:12