Python Neo4j 在 Cypher 语句中使用字符串变量

史蒂夫

我显然误解了 python Neo4j 模块中 session.run 方法的格式。

这有效:

session.run("statement1"
            "statement2"
             "statement3"
             "statement4", variable list)

但是现在我需要在方法外部修改字符串:例如我想做

s1 = "statement1"
s2 = "statement2"
session.run(s1
            s2
            "statement3"
            "statement4", variable list)

这样我就可以以 .run 方法无法处理的方式修改语句 - 例如动态修改标签。

但我收到一个语法错误

我不明白为什么这不起作用。我究竟做错了什么?如何将诸如标签名称之类的变量引入到这样的运行命令中?

谢谢


实际代码是这样的:

    s1 = "MERGE (a:Animal:Female {tag: {tag}})"
    session.run(s1
             " MERGE (d:Animal:Female {tag: {dam}})"
            "MERGE (s:Animal:Male {tag: {sire}})"
            "MERGE (d)-[:DamTo{dob:{dob}}]->(a)"
            "MERGE (s)-[:SireTo{dob:{dob}}]->(a)" , tag = tag, dob = dob, dam = dam, sire = sire )

错误信息:

" MERGE (d:Animal:Female {tag: {dam}})"
                                      ^
SyntaxError: invalid syntax
网络诈骗

在 Python 中,相邻的字符串文字会自动连接。但是,字符串变量不支持自动连接。

尝试改变这个:

         s1
         " MERGE (d:Animal:Female {tag: {dam}})"

对此:

         s1 +
         " MERGE (d:Animal:Female {tag: {dam}})"

其他自动连接应该仍然有效。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Cypher Neo4j中的字符串串联

来自分类Dev

WITH 子句中的 Neo4j Cypher 聚合函数更改

来自分类Dev

Neo4J在Cypher中创建临时变量

来自分类Dev

为Neo4j 2.0使用cypher命名索引

来自分类Dev

如何使用Cypher在Neo4j中“替换”关系?

来自分类Dev

使用Cypher修改Neo4j中的关系链

来自分类Dev

使用jQuery在Neo4j上执行Cypher查询

来自分类Dev

使用jQuery在Neo4j上执行Cypher查询

来自分类Dev

使用原始Cypher在Symfony中查询Neo4j

来自分类Dev

在Neo4j Cypher的RETURN语句中的WITH语句之前使用vars

来自分类Dev

Neo4j / Cypher:将字符串转换为双精度

来自分类Dev

如何在Neo4j Cypher上使字符串包含过滤器

来自分类Dev

Neo4j Cypher将数字字符串设置为日期

来自分类Dev

neo4j cypher将数组/列表转换为字符串

来自分类Dev

如何添加属性的字符串值而不是在Cypher Neo4J中重写它?

来自分类Dev

Neo4j / Cypher:将字符串转换为双精度

来自分类Dev

语法问题?在neo4j cypher语句中将对象作为参数传递

来自分类Dev

在cypher语句中复制Neo4j浏览器自动完成功能

来自分类Dev

使用Neo4j Cypher regex中的反向引用获取子字符串位置的函数

来自分类Dev

Neo4j Cypher Query Regular Expression在正则表达式中使用属性

来自分类Dev

如何在neo4j中使用cypher查询集合?

来自分类Dev

如何在Cypher / Neo4j 2.0中使用START

来自分类Dev

在neo4j中使用cypher收集不同路径长度的节点

来自分类Dev

Neo4J / Cypher:是否可以在where子句中过滤路径的长度?

来自分类Dev

C#:执行neo4j Cypher查询,该查询的Where子句中包含路径

来自分类Dev

尝试通过管理界面在Neo4j中执行Cypher语句列表

来自分类Dev

当我在Neo4j中执行以下cypher语句时显示语法错误

来自分类Dev

在Neo4J中通过Cypher添加语句之前,消除/转义不需要的符号

来自分类Dev

以下两个neo4j cypher语句之间的区别?

Related 相关文章

  1. 1

    Cypher Neo4j中的字符串串联

  2. 2

    WITH 子句中的 Neo4j Cypher 聚合函数更改

  3. 3

    Neo4J在Cypher中创建临时变量

  4. 4

    为Neo4j 2.0使用cypher命名索引

  5. 5

    如何使用Cypher在Neo4j中“替换”关系?

  6. 6

    使用Cypher修改Neo4j中的关系链

  7. 7

    使用jQuery在Neo4j上执行Cypher查询

  8. 8

    使用jQuery在Neo4j上执行Cypher查询

  9. 9

    使用原始Cypher在Symfony中查询Neo4j

  10. 10

    在Neo4j Cypher的RETURN语句中的WITH语句之前使用vars

  11. 11

    Neo4j / Cypher:将字符串转换为双精度

  12. 12

    如何在Neo4j Cypher上使字符串包含过滤器

  13. 13

    Neo4j Cypher将数字字符串设置为日期

  14. 14

    neo4j cypher将数组/列表转换为字符串

  15. 15

    如何添加属性的字符串值而不是在Cypher Neo4J中重写它?

  16. 16

    Neo4j / Cypher:将字符串转换为双精度

  17. 17

    语法问题?在neo4j cypher语句中将对象作为参数传递

  18. 18

    在cypher语句中复制Neo4j浏览器自动完成功能

  19. 19

    使用Neo4j Cypher regex中的反向引用获取子字符串位置的函数

  20. 20

    Neo4j Cypher Query Regular Expression在正则表达式中使用属性

  21. 21

    如何在neo4j中使用cypher查询集合?

  22. 22

    如何在Cypher / Neo4j 2.0中使用START

  23. 23

    在neo4j中使用cypher收集不同路径长度的节点

  24. 24

    Neo4J / Cypher:是否可以在where子句中过滤路径的长度?

  25. 25

    C#:执行neo4j Cypher查询,该查询的Where子句中包含路径

  26. 26

    尝试通过管理界面在Neo4j中执行Cypher语句列表

  27. 27

    当我在Neo4j中执行以下cypher语句时显示语法错误

  28. 28

    在Neo4J中通过Cypher添加语句之前,消除/转义不需要的符号

  29. 29

    以下两个neo4j cypher语句之间的区别?

热门标签

归档