Neo4j Browser执行Cypher语句报错:Invalid input 'b'求助
嘿,我一眼就揪出问题啦!你的Cypher语句里有个低级但容易犯的语法错误——在alcance:'interNational'这个属性的末尾漏掉了一个逗号,导致Neo4j的解析器没法正确识别后面的abstract属性,这才抛出了这个奇怪的输入错误。
问题拆解
报错信息里的Invalid input 'b': expected 'n/N'看起来有点迷惑,但本质是解析器在处理完alcance:'interNational'后,没找到分隔属性的逗号,直接碰到了abstract的首字母'b',完全摸不清接下来的语法逻辑,所以才报错。
修正后的完整语句
只需要补上那个漏掉的逗号就可以正常执行了,这是修正后的代码:
CREATE(ARTMPA12:Articulo{ISBN:4,vol:'',num:'',edit:'',titulo:'',nameevento:'',alcance:'interNational',abstract:'',numpags:'',rutapdf:'',palabraClave1:'datamatching',palabraClave2:'deduplication',palabraClave3:'record linkage',anio:2015})
小建议
如果你的节点属性比较多,建议把每个属性单独换行写,这样排版更清晰,也更容易检查有没有遗漏逗号,比如:
CREATE(ARTMPA12:Articulo{ ISBN:4, vol:'', num:'', edit:'', titulo:'', nameevento:'', alcance:'interNational', abstract:'', numpags:'', rutapdf:'', palabraClave1:'datamatching', palabraClave2:'deduplication', palabraClave3:'record linkage', anio:2015 })
这样哪怕属性再多,也能轻松避免类似的语法失误~
内容的提问来源于stack exchange,提问作者Amal KHEMIRI
相关产品推荐
相关产品推荐

