从OrientDB迁移至ArcadeDB后,无法查看边属性值的问题
解决ArcadeDB中边属性不显示的问题
以下是针对你遇到的边属性无法查看问题的排查与解决步骤:
先确认UPDATE操作是否真正生效
执行查询时强制返回所有属性,验证数据是否已写入:SELECT @rid, * FROM ViewIncludes WHERE @rid = #632:2如果还是看不到
order字段,在更新时添加RETURN AFTER子句直接确认结果:UPDATE #632:2 SET order = 1 RETURN AFTER查看返回结果里是否包含
order属性,以此判断更新是否成功。检查边属性的架构定义
执行命令确认属性的定义状态:SELECT * FROM metadata:property WHERE name = 'order' AND class.name = 'ViewIncludes'确认结果中
type为INTEGER,且无mandatory等限制导致属性无法存储。排查图视图的显示设置
ArcadeDB的图视图默认可能不会展示所有边属性,你可以:- 右键点击目标边,选择「Properties」,尝试手动添加
order属性到显示列表; - 切换到JSON视图时,确保未开启属性过滤规则,或用
SELECT *, @rid FROM ViewIncludes WHERE @rid = #632:2强制返回所有字段。
- 右键点击目标边,选择「Properties」,尝试手动添加
验证边属性的读取逻辑
若该属性用于顶点排序,尝试通过顶点关联查询验证属性是否存在:SELECT out('ViewIncludes').@rid, outE('ViewIncludes').order FROM <关联顶点RID>确认是否能正常获取
order值,判断是存储问题还是前端视图显示问题。刷新架构缓存
架构变更后可能需要刷新缓存,执行:RELOAD SCHEMA之后重新查询并查看图视图,确认属性是否显示。
兼容OrientDB的属性创建语法
尝试指定边类型重新创建属性:CREATE PROPERTY ViewIncludes.order INTEGER (EDGE)重新更新属性值后再进行查询。
内容的提问来源于stack exchange,提问作者Rob
相关产品推荐
相关产品推荐

