【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

2026 年最值得关注的开源低代码 / 零代码平台推荐

2026 年最值得关注的开源低代码 / 零代码平台推荐

无论是零代码小白还是资深开发者,都能在这些平台上找到适合自己的解决方案。今天,我们就来盘点一下 2026 年最值得关注的开源低代码 / 零代码平台,帮助您找到最适合的工具。 一、敲敲云 - 永久免费开源零代码平台 2026 年 1 月 12 日,敲敲云全新版本 v2.3.0 正式发布! 这一版本最大的亮点是正式宣布永久免费开放,彻底打破了传统零代码平台的用户数、应用数、表单数等多重限制,实现真正的零门槛、零成本使用。 敲敲云专注于为企业快速构建应用和工作流,是一款强大且易用的零代码平台。用户无需编写任何代码,即可通过丰富的组件库轻松创建各类应用,真正做到了 "人人都是开发者"。 产品特点: * 免费零代码使用,快速上手,无需开发背景 * 丰富的组件库和模板,满足多样化应用需求 * 可视化流程设计器,支持拖放式工作流设计 * 强大的工作流引擎,支持复杂流程逻辑与条件判断 * 优秀的团队协作功能,支持资源共享和协同开发 * 数据收集能力强,

Unreal Engine 4.27 + AirSim 无人机仿真环境搭建:澳大利亚农村场景更换教程

Unreal Engine 4.27 + AirSim 无人机仿真环境搭建:澳大利亚农村场景更换教程

前言         Unreal Engine 作为一款强大的游戏引擎,在无人机仿真领域也有着广泛的应用。结合 AirSim 插件,我们可以创建高度逼真的无人机飞行环境。本文将详细介绍如何在 Unreal Engine 4.27 中搭建基于澳大利亚农村场景(Rural Australia)的无人机仿真环境,为无人机算法开发和测试提供真实的虚拟场景。 环境准备 软件要求 * Unreal Engine 4.27:AirSim 对 UE4.27 支持最好 * Visual Studio 2019/2022:需要安装 C++ 桌面开发组件 * AirSim:微软开源的无人机 / 自动驾驶仿真平台 * Rural Australia 资源包:Unreal 官方免费场景资源 第一步:创建 Unreal Engine 项目

Altera USB-Blaster驱动安装:FPGA下载基础完整指南

从零搞定Altera USB-Blaster驱动安装:FPGA下载不踩坑实战指南 你有没有遇到过这样的场景? 辛辛苦苦写完Verilog代码,综合布线全部通过,满心期待地打开Quartus Programmer准备烧录——结果却弹出“ No hardware available ”或“ Can’t access JTAG chain ”。 别急,这大概率不是你的设计出了问题,而是那个看似简单、实则暗藏玄机的 USB-Blaster 驱动没装好 。 在FPGA开发中,硬件连接的稳定性往往比逻辑设计更先决定成败。而作为Intel(原Altera)官方标配的编程工具, USB-Blaster 虽小,却是打通PC与FPGA之间通信链路的关键枢纽 。一旦驱动异常,再完美的设计也只能“望板兴叹”。 本文将带你彻底搞懂 USB-Blaster 的工作原理、驱动机制和安装全流程,重点解决 Windows 平台下常见的识别失败、签名阻止、反复掉线等顽疾,并提供可复用的调试脚本和工程实践建议,助你构建一个稳定可靠的 FPGA 下载环境。 USB-Blaster 到底是什么?

从低代码到 AI 智能体:VTJ.PRO 2.0 深度解析

技术白皮书 版本 1.0 | 2026年3月 摘要 随着企业数字化转型进入深水区,软件开发效率与质量的双重压力推动着开发工具的持续演进。VTJ.PRO 作为一款 AI 驱动的 Vue3 低代码开发平台,在 2026 年初发布的 2.0 版本中实现了从“低代码工具”到“AI 原生应用开发平台”的质变跃迁。本白皮书将深入解析 VTJ.PRO 2.0 的核心架构、技术创新及其实践价值,揭示其如何通过“AI 智能体+前后端一体+企业级工程化”的三位一体架构,重新定义现代应用开发范式。 第一章:背景与愿景 1.1 低代码开发的演进困局 传统低代码平台在过去十年中虽然显著提升了开发效率,但也面临三大核心挑战: 平台锁定风险:多数平台生成代码依赖私有运行时,一旦采用便难以脱离,