建立搜索引擎网站,网站设计制作一条龙,wordpress又拍云,wordpress笑话页面模板neo4j 一、安装二、简单操作一、创建二、查询三、关系四、修改五、删除 三、常见报错一、默认的数据库密码是neo4j,打开浏览器http://localhost:7474登录不上,报错: Neo.ClientError.Security.Unauthorized: The client is un… neo4j 一、安装二、简单操作一、创建二、查询三、关系四、修改五、删除 三、常见报错一、默认的数据库密码是neo4j,打开浏览器http://localhost:7474登录不上,报错: Neo.ClientError.Security.Unauthorized: The client is unauthorized due to authentication failure. 一、安装
首先要有对应的java环境,我的是
neo4j官网地址
点击Deployment Center 往下拉,选择对应的版本,点击下载 填好个人信息,进入下载页面,保存下面的key,打开软件登录时会用到 二、简单操作
进入数据库后,点击open,在下图所示的$符号处输入语句
一、创建
1、创建节点
create (node-name:label-name)node-name:要创建的节点名称label-name:要创建的标签名称
eg:
create (s:Student)上述的Student就类似于关系型数据库的表
2、创建带属性的节点
create (node-name:label-name {property1-name:property1-Value,property2-name:property2-Value,...,property3-name:property3-Value
})eg:
create (s:Student{id 1,name 李世民,age2000})上述的id,name,age就类似于关系型数据库表中的字段
3、merge
类似于oracle中的merge操作,若节点不存在则创建,若节点已存在则进行更新
merge (a:Person {name:李世民})
merge (b:Person {name:李治})
merge (b)-[:SON]-(a)条件性创建或匹配
merge (p:Person {name: 嬴政})
on create set p.age 30
on match set p.height 190上述代码表示检查是否存在一个具有Person标签且属性name为嬴政的节点,如果不存在,则创建一个且设置属性age为30;如果已存在,则设置height属性为190
二、查询
1、查询全部
match (s:Student) return s;2、查询部分
match (s:Student) return s.id,s.name;3、按条件查询
match (s:Student) where s.age 20 return s.id,s.name;4、排序
match (s:Student) where s.age 20 return s.id,s.name order by s.age desc;5、分组
neo4j的分组不用显式的指定group by,未加聚合函数的字段默认为分组字段这里一共有三个字段,id,name,age,return id,其中name,age相当于未加聚合字段,即按其分组相当于sql:select s.id,count(*) from Student s where s.age 20 group by s.age,s.name
match (s:Student) where s.age 20 return s.id,count(*);6、limit语句
match (s:Student) where s.age 20 return s.id,s.name limit 3;跳过多少行再limit
match (s:Student) where s.age 20 return s.id,s.name skip 2 limit 3;三、关系
图数据库与关系型数据库最大的区别就是图可以存储多边关系
1、创建关系
创建一个老师节点
create (t:Teacher{id:20001,name:王老师,age:35,teach:语文}) return t创建关系,年龄小于20的都是该老师学生
match (t:Teacher),(s:Student) where s.age 20
create (t)-[teach:Teach]-(s)
return t,teach,s;2、查询全部关系
match (a)-[b]-(c) return a,b,c;四、修改
match (s:Student) where s.name 李世民 set s.age 2000 return s;五、删除
1、删除部分节点
match (s:Student) where s.age 20 delete s;注:若节点有关系需先删除关系
match (t:Teacher)-[teach]-(s:Student) where s.age 20 delete teach,s;2、删除整个节点
match (s:Student) delete s;3、删除全部节点以及关系(慎用!)
match (n) detach delete n4、删除节点的属性
可以用remove
match (s:Student{name:李世民}) remove s.age;三、常见报错
一、默认的数据库密码是neo4j,打开浏览器http://localhost:7474登录不上,报错: Neo.ClientError.Security.Unauthorized: The client is unauthorized due to authentication failure.
找到neo4j.conf文件 最直接方法是修改dbms.security.auth_enabledfalse,表示禁用身份验证,任何人可以无需凭证访问数据库