如何在Apache AGE中删除顶点或边的Label?
在Apache AGE中删除顶点或边Label的正确方法
问题重现
你尝试通过以下语句删除顶点Label:
SELECT drop_vlabel('graph','vName'); SELECT delete_vlabel('graph','vName');
执行后触发错误:
ERROR: function drop_vlabel(unknown, unknown) does not exist ERROR: function delete_vlabel(unknown, unknown) does not exist
解决方案
Apache AGE并未提供drop_vlabel或delete_vlabel函数,删除顶点/边Label需使用统一的drop_label函数,通过第三个布尔参数区分顶点与边:
1. 删除顶点Label
第三个参数传入false,指定操作对象为顶点Label:
SELECT drop_label('graph', 'vName', false);
2. 删除边Label
第三个参数传入true,指定操作对象为边Label:
SELECT drop_label('graph', 'eName', true);
前置操作说明
执行drop_label前必须先删除该Label下的所有顶点/边,否则会触发报错。可通过以下语句清理对应元素:
-- 删除指定顶点Label下的所有顶点 MATCH (n:vName) DELETE n; -- 删除指定边Label下的所有边 MATCH ()-[e:eName]->() DELETE e;
内容的提问来源于stack exchange,提问作者Muneeb Khan
相关产品推荐
相关产品推荐

