Neo4j:仅当不存在时如何调用“CREATE INDEX”

2023-12-24

The CREATE INDEX <indexName>命令不是幂等的,如果给定索引已存在,则会导致错误。我是 neo4j 的新手,找不到避免此错误的谓词。我尝试过各种排列ANY(...),并且它们都在“db.indexes()”处呕吐。

Since CREATE INDEX ...如果索引存在并且失败DROP INDEX ...如果没有,就会失败,我不知道如何编写仅在需要时创建索引的 .cypher 文件。

简短的形式可能类似于CREATE INDEX indexName FOR (c:SomeLabel) ON (c.someProperty) IF NOT EXISTS,但当然这个缩写形式不存在。

有没有办法用谓词、子查询或类似的表达式来做到这一点?


从 Neo4j 4.1.3 开始,引入了新的索引创建语法来做到这一点

CREATE INDEX myIndex IF NOT EXISTS FOR (t:Test) ON (t.id)

搜索性能索引 https://neo4j.com/docs/cypher-manual/current/indexes-for-search-performance/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Neo4j:仅当不存在时如何调用“CREATE INDEX” 的相关文章

  • 如何在java中使用cypher加载CSV文件?

    我是密码新手 我想在java中使用cypher加载csv 我用谷歌搜索并找到了以下作品 LOAD CSV WITH HEADERS FROM http neo4j com docs 2 3 1 csv import movies csv A
  • Neo4j:插入 7k 节点很慢(Spring Data Neo4j / SpringRestGraphDatabase)

    我正在构建一个应用程序 我的用户可以在其中管理字典 其中一项功能是上传文件以初始化或更新词典的内容 我首先关注的结构部分是Dictionary CONTAINS gt Word 从一个空数据库 Neo4j 1 9 4 但也尝试过 2 0 0
  • Neo4j 在 Cypher 查询运行中仅使用一个核心

    当我在 UI 中运行 Cypher 查询时 服务器中只有一个核心正在运行 查询会卡住或响应非常慢 我使用 Neo4j 3 0 7 社区 有人知道我可以使用所有核心进行哪些调整吗 单个 Cypher 查询仅限于单个线程 看到这个tweet h
  • 使用java将数据从Neo4j导出到csv

    将数据从 Neo4j 导出到 CSV 的最佳方法是什么 我已使用链接中的 CSV 导入器将数据从 csv 导入到 neo4jhttps github com sroycode neo4j import https github com sr
  • Neo4j - 根据关系属性查找两个节点之间的最短路径

    我试图弄清楚是否有某种方法可以根据关系总和获得两个节点之间的最短距离 给出以下示例 neo4j 图像示例 https i stack imgur com fiJe1 png 上图代码 CREATE some point 1 Point ti
  • 如何从 Neo4j 服务器插件登录?

    我正在尝试调试我正在编写的 Neo4J 服务器插件中的问题 有可以输出的日志吗 在哪里或如何执行此操作并不明显 好问题 我想你可以使用 Java 日志记录吗 这应该被路由到正常的日志系统中
  • Cypher:从集合中提取唯一值

    I have MATCH x rels gt y RETURN extract r in rels r property as collected where collected是路径上所有关系的属性的集合 例如 null 4 null 4
  • 如何转储 neo4j 图形数据库?

    我将所有数据库存储在一个位置C JATIN DATA 数据库 neo4jDatabases 如何使用 neo4j Desktop 单独转储所有数据库 我已经尝试过 neo4j admin dump database to 这个命令但出现错误
  • 如何在 Gremlin 中查找公共顶点数并对结果进行排序?

    我的架构有两种类型的节点 node1 学生 id为主键 节点2 技能 技能名称为主键 他们之间的关系是HAS SKILL 我的用例 对于给定的学生 Id 我需要获取技能最匹配的相似用户 技能计数和常用技能列表 我尝试过的查询 g V has
  • with 子句做什么?新4j

    I don t understand what WITH clause do in Neo4j I read the The Neo4j Manual v2 2 2 http neo4j com docs stable query with
  • 如何结识有相同兴趣的朋友的朋友?

    交朋友的朋友很容易 我得到了这个 看起来效果很好 g v 1 in FRIEND in FRIEND filter it g v 1 但我想做的只是结交有相同兴趣的朋友的朋友 下面我希望 Joe 被推荐为 Moe 而不是 Noe 因为他们没
  • Neo4j:基于聚合函数过滤节点

    假设我有一个客户节点列表和每个客户下的订单列表 表示为与这些客户节点关联的订单节点 每个订单都有一个与其关联的成本数字属性 我想返回那些平均订单大于阈值的客户 这是一些无法运行的代码 说明了我想要的内容 MATCH n0 Customer
  • 是否有工具可以将 Neo4j 图转储为 Cypher 并从 Cypher 重新加载它?

    每个熟悉 MySQL 的人都可能使用过 mysqldump 命令 它可以生成代表 MySQL 数据库中的架构和数据的 SQL 语句文件 这些 SQL 文本文件通常用于多种用途 备份 播种副本 在安装之间复制数据库 将产品数据库复制到临时环境
  • Neo4j 中合并和创建唯一之间的区别

    我试图找出合并和创建唯一之间的区别 我知道这些功能 合并 如果不存在模式 我可以创建节点 MERGE n name X RETURN n 这将创建具有属性名称的节点 n 空节点 m 和关系 RELATED MERGE n name X RE
  • Neo4J 2.1.3 唯一性约束被违反,这是一个错误吗?

    我们有一个 Neo4J 2 1 3 数据库 并且有一个创建的唯一性约束 如下所示 在 段 SEGMENT 断言上创建约束 segmentId 是唯一的 当我们从浏览器测试这一点时 它可以很好地检测违规行为 例如 CREATE n SEGME
  • 使用 spring-data-neo4j 时如何启用 neo4j webadmin?

    我正在启动一个新项目使用 REST 访问 Neo4j 数据 http spring io guides gs accessing neo4j data rest 例子 该示例使用嵌入式数据库而不是独立的 neo4j 服务器 但我想使用 Ne
  • 在json文件中导出neo4j数据库

    我想以 JSON 文件导出 Neo4j 图形数据库 This is a Export JSON button in Neo4j web UI version as shown in attached image below 但是 Neo4j
  • 我能找到neo4j中两个节点之间的所有关系吗?

    我有一组节点 它们通过以下方式相关 A gt B gt C gt D 该关系是与某个 id 属性的 连接 关系 我的问题是 我可以编写一个 cypher 查询 它将显示从起始节点 A 到起始节点 D 的每个关系的所有 id 属性 而不在查询
  • UNWIND 从 JSON 文件加载的多个不相关的数组

    我试图通过一次调用 apoc load json 来展开多个数组属性 我的版本不能完全工作 某些关系无法加载 我的猜测是 这是由于通过WITH 命令进行输出管道造成的 如果我为每个基于数组的属性单独运行展开 我可以加载所有内容 但我很好奇如
  • 如何使用 Bolt 协议将对象数组(批量插入)插入到 Neo4j 中(javascript)

    1 将带有对象数组的http post发送到服务器 id 1 title one id 2 title two 2 在服务器上接收帖子并使用bolt批量插入neo4j let data req body set up bolt let db

随机推荐

  • Python 中的构造函数 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我需要帮助编写 Python 构造函
  • 使用对象包装器来扩展 JavaScript DOM?

    我正在尝试向 JavaScript DOM 添加简单的函数 例如一个addClass函数 我首先使用以下代码实现了它 Element prototype addClass function className this className
  • 从目录中删除所有 git 文件?

    我有一个受版本控制的文件夹 我想复制它以发送 但不想包含所有 git 目录及其下面的文件 有没有办法删除所有 git 文件 而不是手动删除所有文件 如何全部删除 gitLinux 中文件夹下的目录 运行这个 find 命令 它将列出所有 g
  • $提供外部配置块

    我当然遗漏了有关注射器的一些基本点 但我无法理解为什么会这样 angular module app config function provide and this angular module app config function in
  • Pycharm环境与命令行不同

    我在使 Pycharm 环境与命令行上的环境匹配时遇到问题 我最近删除了 python 并通过 homebrew 重新安装了它 我的路径中的 python 指向 usr local bin python我添加了PATH usr local
  • 如何在 C# 中保持单个 SQL Server 连接实例对多个请求打开?

    我有一个 Web API 其中包含 C 中的数据库插入逻辑 ado net 当多个用户 例如 100 个用户 调用 Web API 时 每次都会针对多个请求打开和关闭 SQL Server 连接 它会降低性能 如何为多个请求保持单个 SQL
  • 如何将 exe 输出分配给 gitlab ci 脚本中的变量?

    运行 gitlab ci 时 我需要检查指定的 svn 目录是否存在 我正在使用脚本 variables DIR CHECK default stages setup test otherDebugJob csharp only chang
  • 向一个表插入多行还是向多个表分别插入行?

    我有两个数据库表 SQL CE ATeacher表和一个AClass桌子 这两个表具有一对多关系 其中一名教师有多个班级 即Class有外键教师 ID 教师数 行数 是通过 C 代码在运行时插入 或生成 的 因此班级数也是如此 INSERT
  • getAvailableBlocksLong() * getBlockSizeLong() VS getAvailableBytes()

    编辑 我在测试中确实犯了一个愚蠢的错误 我在不知情的情况下在这里问了一个问题 答案是 两者是一样的 但我把我的帖子留给其他人 有什么区别getAvailableBlocksLong getBlockSizeLong and getAvail
  • 使用 System.Threading.Timer 和 Monitor 进行线程安全执行

    Using a System Threading Timer导致线程从ThreadPool 这意味着如果计时器的执行间隔到期 而线程仍在按先前请求的顺序处理 则相同的回调将被委托在另一个线程上执行 在大多数情况下 这显然会导致问题 除非回调
  • \x 在替换中不起作用

    我正在尝试解码 unicode 字符 所以我只是尝试了十六进制转义序列 x 在正则表达式替换中e use LWP Simple my k get url my kv map js call k now kv data is https so
  • Oracle物化视图问题

    例如 我有一个表 其中包含有关不同事件的信息 CREATE TABLE events id int not null primary key event date date 我意识到 90 的查询仅访问今天的事件 较旧的行将被存储以供历史记
  • 不命名类型

    不知道为什么编译器给出 nodes 没有命名类型 错误 struct node struct node int data struct node left struct node right struct node nodes 1024 n
  • 如何修复符号查找错误:集群环境中未定义的符号错误

    我正在编写一些 python 代码 使用 GDAL 从 ECW 文件中提取一些图像数据 http www gdal org http www gdal org 及其 python 绑定 GDAL 是从源代码构建的以获得 ECW 支持 该程序
  • 使用自定义声明的 Angular 和 Firebase 路线防护

    我正在 firestore auth 中动态创建用户 并添加了多种类型的声明 即管理员 讲师 助理 到目前为止 我可以使用新创建的用户登录并将声明属性设置为 true 即admin true instructor true根据我提供的登录凭
  • 在 Java 中将字符串转换为十六进制

    我正在尝试将像 testing123 这样的字符串转换为java中的十六进制形式 我目前正在使用BlueJ 而将其转换回来 除了向后转换之外 是一样的吗 这是将其转换为十六进制的简短方法 public String toHex String
  • 如何在Python请求中使用相同的键发布多个值?

    requests post url data interests football interests basketball 我尝试过这个 但它不起作用 我该如何发帖football and basketball in the intere
  • SQLSTATE[HY000]:一般错误:1835 LARAVEL 上的通信数据包格式错误

    突然得到 SQLSTATE HY000 一般错误 1835 格式错误的通信数据包 SQL select fromtb users where username 121211 限制 1 在 Laravel 上 我已经检查过了 MySQL 错误
  • $.focus() 在 Chrome 中不起作用

    在 chrome 的开发者工具控制台中我选择input type text 元素 然后尝试专注于它 例如 input foo focus 它不起作用 没有抛出错误 但元素没有聚焦 我花了半个小时试图找出这个问题 所以我发布这个是为了帮助其他
  • Neo4j:仅当不存在时如何调用“CREATE INDEX”

    The CREATE INDEX