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

TypeDB更新查询随机实例时遇语法及写入错误求助

TypeDB 查询错误分析与修正方案

错误诊断

  • [TQL03] 语法错误:TypeDB 查询不允许独立的delete语句块,delete必须紧跟在match块之后用于删除匹配到的实例/关系。原查询中delete位置不符合语法规则,因此被判定为多余输入。
  • [THW15] 写入错误:移除delete后,第二条insert引用的变量$segment1未在查询的match阶段或前面的insert中完成绑定,TypeDB 无法识别未绑定的变量,导致无法执行插入操作。

修正后的查询(符合预期逻辑)

match
  $sensor isa Sensor;
  $segment1 isa Segment, monitoredBy $sensor;
  $segment2 isa Segment, monitoredBy $sensor;
  $old-connects isa connectsTo, relates source $segment1, relates target $segment2;
delete
  $old-connects;
insert
  $new-segment isa Segment;
  $new-connects1 isa connectsTo, relates source $segment1, relates target $new-segment;
  $new-connects2 isa connectsTo, relates source $new-segment, relates target $segment2;
  $new-monitor isa monitoredBy, relates monitored $new-segment, relates monitor $sensor;

逻辑说明

  1. match阶段:匹配到同一Sensor监控的、存在connectsTo关系的两个Segment实例
  2. delete阶段:删除这两个Segment之间原有的connectsTo关系
  3. insert阶段:
    • 创建新的Segment实例
    • 建立$segment1到新Segment、新Segment到$segment2的connectsTo关系
    • 建立新Segment与原Sensor的monitoredBy监控关系

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 08:57:12