【neo4j】安装使用教程

【neo4j】安装使用教程

一、安装

1.0 前置条件

安装配置好jdk17及以上

注意我使用的是neo4j 5.26.10版本,匹配java17刚好

Java Archive Downloads - Java SE 17.0.12 and earlier

无脑安装即可

配置以下环境变量

1.1 安装程序

Neo4j Deployment Center - Graph Database & Analytics

下载解压即可,Windows是绿色版本

1.2 配置环境

添加neo4j的地址

二、基本使用

2.1 开启、关闭和查看运行状态

进入安装目录的bin文件夹,cmd窗口输入

 ./neo4j.bat console

关闭直接ctrl+c即可关闭

查看运行状态,cmd窗口输入 neo4j status

2.2 查看数据库

开启后进入以下网址即可查看

http://localhost:7474

2.3 导入dump文件

neo4j-admin database load --from-path="D:\develop\neo4j-community-5.26.10\dumps" --overwrite-destination=true neo4j

注意,dump文件的名称必须和数据库同名

不然会报错

三、neo4j常用命令

Neo4j 的常用命令主要分为两大类:Cypher 查询语言Neo4j 管理命令。下面我将为您详细列出并解释这些命令。

3.1 Cypher 查询语言(核心操作)

Cypher 是 Neo4j 的声明式图查询语言,用于操作和查询图数据。它的语法非常直观,旨在匹配图中的模式。

3.1.1 创建(CREATE)

用于创建节点、关系和属性。

  •   创建节点
-- 创建单个节点(无标签,无属性) CREATE (n) -- 创建带标签的节点 CREATE (n:Person) -- 创建带标签和属性的节点 CREATE (n:Person {name: 'John Doe', age: 30}) -- 创建多个节点 CREATE (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'})
  • 创建关系:
-- 在两个已存在节点间创建关系(需要先找到节点) MATCH (a:Person {name: 'Alice'}), (b:Person {name: 'Bob'}) CREATE (a)-[r:KNOWS {since: 2020}]->(b) RETURN r -- 在创建节点的同时创建关系(适用于节点也不存在时) CREATE (a:Person {name: 'Alice'})-[r:LOVES {since: 2021}]->(b:Person {name: 'Bob'}) RETURN a, r, b

3.1.2 匹配(MATCH)

用于查询图中的节点和关系。通常与 `RETURN` 或 `WHERE` 等子句联用。

  • 查找所有节点:
MATCH (n) RETURN n
  • 查找特定标签的节点:
MATCH (n:Person) RETURN n
  • 根据属性查找节点:
MATCH (n:Person {name: 'Alice'}) RETURN n -- 或使用 WHERE 子句 MATCH (n:Person) WHERE n.name = 'Alice' AND n.age > 25 RETURN n
  • 查找关系:
-- 查找所有 KNOWS 关系 MATCH ()-[r:KNOWS]->() RETURN r -- 查找从 Alice 出发的 KNOWS 关系 MATCH (a:Person {name: 'Alice'})-[r:KNOWS]->(b) RETURN a, r, b

3.1.3 更新(SET, REMOVE)

用于修改节点或关系的属性或标签。

  • 设置/更新属性:
MATCH (n:Person {name: 'Alice'}) SET n.age = 31, n.city = 'Berlin' RETURN n
  • 移除属性:
MATCH (n:Person {name: 'Alice'}) REMOVE n.city RETURN n -- 或者使用 SET n.property = NULL
  • 添加标签:
MATCH (n:Person {name: 'Alice'}) SET n:Employee RETURN n
  • 移除标签:
MATCH (n:Person:Employee {name: 'Alice'}) REMOVE n:Employee RETURN n

3.1.4 删除(DELETE)

用于删除节点和关系。

警告:必须先删除关系,才能删除节点。

-- 删除一个节点(确保该节点无任何关系) MATCH (n:Person {name: 'Bob'}) DELETE n -- 删除一个节点及其所有相连的关系 MATCH (n:Person {name: 'Bob'}) DETACH DELETE n -- 删除关系 MATCH (a:Person {name: 'Alice'})-[r:KNOWS]->(b:Person {name: 'Bob'}) DELETE r

3.1.5 合并(MERGE)

“有则返回,无则创建”。它确保一个模式存在于图中。如果该模式不存在,则创建它;如果存在,则只是匹配到它。强烈建议与 ON CREATE 和 ON MATCH 一起使用。

-- 合并节点(如果不存在则创建,并设置初始属性) MERGE (n:Person {name: 'Alice'}) ON CREATE SET n.created_at = timestamp() ON MATCH SET n.last_seen = timestamp() RETURN n -- 合并路径(节点和关系) MERGE (a:Person {name: 'Alice'})-[r:KNOWS]->(b:Person {name: 'Bob'}) ON CREATE SET r.since = 2023 RETURN a, r, b

3.2 Neo4j 管理命令(在 Neo4j Browser 或 -Shell 中执行)

这些命令主要用于数据库管理、索引、约束和元数据查询。

3.2.1 约束(Constraints)

用于保证数据的完整性。

  • 创建唯一性约束:
CREATE CONSTRAINT constraint_name FOR (n:Person) REQUIRE n.email IS UNIQUE
  • 查看所有约束:
SHOW CONSTRAINTS
  • 删除约束:
DROP CONSTRAINT constraint_name

3.2.2 索引(Indexes)

用于大幅提高查询性能。

  • 创建索引:
CREATE INDEX index_name FOR (n:Person) ON (n.name)
  • 创建复合索引:
CREATE INDEX index_name FOR (n:Person) ON (n.firstName, n.lastName)
  • 查看所有索引:
SHOW INDEXES
  • 删除索引:
DROP INDEX index_name

3.2.3 信息查询(Schema & Info)

  • 查看数据库基本信息:
:sysinfo
  • 查看图数据库的结构(所有标签、关系类型、属性):
CALL db.schema.visualization()
  • 列出所有数据库:
SHOW DATABASES
  • 查看当前数据库的状态和信息:
CALL db.info()

3.2.4 用户与权限管理(企业版功能)

  • 显示所有用户:
SHOW USERS
  • 创建用户:
CREATE USER username SET PASSWORD 'password' CHANGE NOT REQUIRED SET STATUS ACTIVE
  • 更改用户密码:
ALTER USER username SET PASSWORD 'newpassword' CHANGE NOT REQUIRED

3.3 实用技巧和命令

3.3.1 清空整个数据库(谨慎使用!)

MATCH (n) DETACH DELETE n

这会删除所有节点和关系,但不会删除索引和约束。

3.3.2 计数:

-- 统计图中所有节点的数量 MATCH (n) RETURN count(n) -- 统计某个标签的节点数量 MATCH (n:Person) RETURN count(n)

3.3.3 在 Neo4j Browser 中使用命令行:

  • :help - 查看帮助
  • :play start - 打开初学指南
  • :history - 查看命令历史

希望这个列表对您有帮助!Neo4j 的 语言非常强大且易读,最好的学习方式就是在 Neo4j Browser 中实际操作。

Read more

AI生成图片R18提示词:新手入门指南与最佳实践

AI 生成图片 R18 提示词:新手入门指南与最佳实践 (2026 年视角,适用于本地 Stable Diffusion / Flux / Pony 等开源模型,或部分支持 NSFW 的在线平台) R18(成人限制级)内容在 AI 图像生成中属于高敏感领域,不同模型/平台对它的开放程度差异极大: * 完全封禁或强过滤:Midjourney、DALL·E 3/4、Flux.1 [dev/pro] 官方、Google Imagen、Adobe Firefly 等 * 部分支持但需技巧:NovelAI、Pony Diffusion、Flux Uncensored 变体、某些 SDXL LoRA 模型

「龙虾」来了!OpenClaw如何掀起AI智能体革命

「龙虾」来了!OpenClaw如何掀起AI智能体革命

「龙虾」爆火:OpenClaw的崛起与狂欢 OpenClaw生态系统 能力扩展 部署方式 部署方式 部署方式 OpenClaw核心 ClawHub技能商店 百度App一键调用 DuClaw零部署服务 红手指Operator移动端 财经分析 新闻推送 股票分析 全网比价 5000万tokens免费 网页端直接使用 跨App操作 打车、外卖等 腾讯 QClaw WorkBuddy 腾讯云Lighthouse 智能体开发平台ADP 3月12日,百度在安卓端上线「红手指Operator」应用,标志着全球首款手机「龙虾」应用正式诞生。这款结合了自研移动端AI Agent能力的应用,可实现打车、外卖订餐等跨App交互操作,一经推出便引爆下载热潮,甚至导致系统后台资源出现紧缺。百度智能云迅速回应称,正全速调配资源扩容,全力保障用户体验。 OpenClaw,这个昵称为「龙虾」的个人AI智能体助手,在短短3周内GitHub Star数突破19万,比当年DeepSeek的增长速度还要迅猛。

【全网最详细!十万字解析】SpringAI+Deepseek大模型应用开发实战笔记-上半(进阶+详细+完整代码)

【全网最详细!十万字解析】SpringAI+Deepseek大模型应用开发实战笔记-上半(进阶+详细+完整代码)

前言         全网目前最完整的针对黑马程序员的SpringAI+Deepseek大模型应用课程的学习笔记         在课程的基础之上进行了许多的拓展和延伸         相信一定可以帮到你更好的学习和掌握大模型应用的开发和SpringAI的运用         希望觉得有用的小伙伴可以点赞收藏关注!!!         目前文章还剩一点没更新完,后续会把完整前后端开发好的代码传上去,现在因为还没有完全改好,怕涉及侵权文档,不敢直接发,后续我把前端也做一定修改之后,会打包一起分享出来        下半部分链接:【全网最详细!十万字解析】黑马SpringAI+Deepseek大模型应用开发实战笔记-下半(进阶+详细+完整代码)-ZEEKLOG博客        后端完整代码:GM828/HFUT-AIChat: SpringAI实战项目,实现了Prompt+FunctionCalling+RAG的功能,通过MySQL和Redis进行数据持久化操作 目录 前言 1.对话机器人 1.1对话机器人-初步实现 1.1.1引入依赖 1.1.2配置模型信息