java 删除neo4j标签_Neo4j使用neo4j-jdbc删除节点属性

我有一个优势的边缘 . 我想保持优势,但只删除name属性 .

我的java Cypher是这样的:

public static final String DELETE_EDGE_PROPERTY_QUERY = //

"MATCH ()-[r]->() where id(r) = {1} REMOVE r.{2} RETURN r"; //

它适用于cypher控制台,但不适用于jdbc .

我收到了这个错误:

处理失败;嵌套异常是org.springframework.jdbc.UncategorizedSQLException:PreparedStatementCallback;未分类SQL的SQLException [MATCH() - [r] - >()其中id(r)= {1} REMOVE r . {2} RETURN r]; SQL状态[null];错误代码[0];发生了一些错误:[Neo.ClientError.Statement.SyntaxError]:无效输入'{':预期标识符,空格,函数名称或属性键名称(第1行,第45列(偏移量:44))“MATCH() - [r] - >()其中id(r)= {1} REMOVE r . {2} RETURN r“`

有什么建议?

谢谢

编辑

我无法使用jdbc模板 . 所以我使用了String替换:将属性设置为NULL将删除属性(http://www.baeldung.com/java-neo4j)

解决方案:Java:

String deleteQuery = String.format(DELETE_EDGE_PROPERTY_QUERY, property);

plantJdbcTemplate.update(deleteQuery, edgeId);

密码:

public static final String DELETE_EDGE_PROPERTY_QUERY = //

"MATCH ()-[r]->() where id(r) = {1} SET r.%s = NULL RETURN r";

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值