Neo4j命令行操作数据库
删除数据
如果数据库中的数据量并不大,节点数相对较少,我们可以通过命令行直接删除节点。此类操作起到清空数据库的效果,但是不会删除数据库
这里列举两种常用的删除数据的用法:
- 删除对应节点及其所有关系。也就是说,只要符合键值对 { property-name:value } 条件的节点都会被删除
match (n {<property-name>:<value>} ) detach delete (n)
示例: ```text //创建节点 merge(t:Test{id:01,name:”hh”}) merge(t:test{id:02,name:”hh”})
//name为hh的两个节点及其关系都会删除 match (n{name:”hh”}) detach delete (n)
- 删除所有节点及其所有关系
此命令不用筛选条件,直接将数据库中的所有节点及关系全部删除
match (n) detach delete (n)
```
删除数据库
如果数据库中的数据量很大,节点数非常多,通过命令行删除会比较慢,那么我们可以通过物理方式直接删除数据库。 此类操作直接删除了数据库,数据当然都被清空了
首先,我们需要关闭 Neo4j 数据库的运行。然后找到 Neo4j 数据库的存放目录,也就是
- 3.x版 Neo4j 的 3.x 版本下有一个 databases 文件夹,进入这个文件夹,里面有一个 graph.db 的文件夹和一个 store_lock 文件。 这个 graph.db 文件夹就是我们当前使用的数据库,直接删除即可。
- 4.x版 Neo4j 的 4.x 版本下有一个 databases 文件夹和一个 transactions 文件夹,两个文件夹下都有 graph.db。 我们将这两个文件夹下的 graph.db 都删除即可。