如何在neo4j中删除标签?实际上,我删除了所有节点和关系,然后我重新创建了电影数据库,仍然在Web界面上显示我之前创建的标签。我还尝试使用不同的位置为数据库,即使卸载并重新安装后,标签仍然出现。为什么?标签存储在哪里?卸载程序后,数据库文件夹和appdata文件夹被删除。
如何繁殖?安装neo4j ->使用电影数据库示例->创建(l:SomeLabel {name:“A freaky label”})->删除节点->停止neo,创建新文件夹->启动neo ->创建电影shema -> match(n)return(n)-> SomeLabel出现,即使您更改了文件夹或进行了卸载/安装。
有没有一种方法可以删除标签,即使没有节点?
9条答案
按热度按时间tsm1rwdh1#
目前(Neo4j 2.0.1)还没有一种方法可以显式地删除一个标签。Neo4j浏览器将显示REST端点报告的所有标签:
第一个月
另外,当Neo4j浏览器侧边栏与Neo4j失去连接时,显示标签的侧边栏不会正确刷新列表。Web浏览器重新加载应该可以工作。
最后,Neo4j浏览器的可视化中有一个错误,它会显示所有已创建样式的标签。如果使用的是有这个错误的Neo4j版本,您可以通过单击属性检查器中的“查看样式表”,然后单击灭火器图标来清除样式。无可否认,所有这些都需要改进可用性。
干杯,安德烈亚斯
polhcujo2#
这似乎是由2.3.0版本解决的。
举个例子,假设我们在数据浏览器中创建了一个电影,比如:
字符串
我们可以用
型
它将有4个标签:
Movie
,Cinema
,Film
和Picture
从所有影片中删除
Picture
标签:型
若要仅从该影片中删除
Picture
标签,请执行以下操作:型
axr492tv3#
假设我们已经创建了一个节点Product,如下所示
字符串
现在,即使我从图中删除了所有PRODUCT_MASTER节点,我们仍然会在浏览器中的节点标签下获得PRODUCT_MASTER。为了摆脱相同的,我们需要删除索引。
型
在neo4j-shell中,输入schema命令,获取索引列表和对应的属性。
总而言之,如果我们删除了特定类型的所有节点,您也需要删除该节点上的索引。
whlutmcx4#
我只是:
在Mac上,数据库在这里/usr/local/var/neo4j/data/databases/graph. db
a7qyws3x5#
原因是当一个标签被创建时,Neo4j会索引这个标签。你可以删除节点,但索引会保留。
猜测-如果你把索引放在标签上,它会从GUI中消失(注意-我现在还没有访问Neo4j来检查这个理论)
llew8vvj6#
如果删除该标签的索引,则将从数据库中删除标签。
mm5n2pyu7#
我刚刚找到了一个解决方法(使用neo4j 2.2 M04)。将数据库的内容转储到一个文件中,扔掉数据库,然后再次插入转储。不过,只适用于小型数据库。
步骤1:使用neo4j-shell转储内容
第一个月
第二步:扔掉数据库(有很多方法可以删除文件夹$NEO4J_HOME/data/graph.db/或任何你的数据库文件夹)
步骤3:使用neo4j-shell再次插入转储
$NEO4J_HOME/bin/> neo4j-shell -file dump.temp
个这应该会带来关于创建了多少节点、关系、属性和标签的统计信息。
(And第四步是删除dump.temp文件,它没有理由存在于bin文件夹中。)
我觉得奇怪的是(也许Michael或neo4j的其他人可以解释一下):在我的例子中,Step 3告诉我已经创建了大约50多个标签。然而,当我打开Web界面时,只有我实际使用的15个左右的标签被列出。所以DB现在感觉很干净。不完全确定它是干净的。
mkh04yzy8#
从今天起,使用Neo4j桌面版本:1.1.10和数据库版本:3.4.7删除数据+删除索引+删除任何唯一约束+开发人员>刷新清除所有标签
cgh8pdjw9#
这将在neo4j 5.x上工作:
确保在删除实体后删除所有约束和索引;
使用以下命令获取Schema以了解剩下哪些
Constraints
和Indexes
:字符串
遍历每个约束,并使用以下命令删除它们(注意,索引可能连接到约束,因此也将被删除):
型
如果需要,也可以删除索引:
型
检查您的架构以检查剩下的内容>标签将相应地被删除。