使用 IntelliJ 插件进行开发

从 IntelliJ 浏览表并对 Oracle NoSQL Database Cloud Service 实例或模拟器执行查询。

Oracle NoSQL Database Cloud Service IntelliJ 插件连接到正在运行的 Oracle NoSQL Database Cloud Service 实例或模拟器,并允许您:
  • 使用表浏览器查看定义良好的树结构中的表。
  • 查看有关列、索引、主键和分片键的信息。
  • 在格式正确的 JSON 结构中查看列数据。
  • 使用基于表单的方案条目创建表,或者提供 DDL 语句。
  • 删除表。
  • 使用基于表单的条目添加新列,或者提供 DDL 语句。
  • 删除列。
  • 创建索引。
  • 删除索引。
  • 对表执行 SELECT SQL 查询并以表格格式查看查询结果。
  • 执行 DML 语句在表中更新、插入和删除数据。

本文章包含以下主题:

设置 IntelliJ 插件

了解如何为 Oracle NoSQL Database Cloud Service 实例或模拟器设置 IntelliJ 插件。

作为先决条件,必须先安装 IntelliJ IDEA。可以从 JetBrains 下载 IntelliJ IDEA。

您可以使用以下选项之一安装插件:
  1. 选项 1:JetBrains 插件资料档案库中搜索 Oracle NoSQL Database Cloud Service 连接器,然后安装该连接器。
  2. 选项 2:从 Oracle Technology Network 安装。

    注意:

    可从 Oracle Technology Network 下载最新版本。
    1. Oracle Technology Network 下载 IntelliJ 插件。请勿提取文件。
    2. 启动 IntelliJ IDEA,导航到文件 > 设置 > 插件。您还可以通过选择位于主菜单栏右上角的 IDE and Project Settings 图标 项目设置图标 来访问设置。
    3. 选择右上角的 Manage Repositories,Configure Proxy or Install Plugin from Disk 图标,然后选择 Install Plugin from disk (从磁盘安装插件)。
    4. 选择下载的插件 zip 文件。

重新启动 IDE。您将在右侧面板上看到 Schema Explorer(方案浏览器)图标。

成功设置 IntelliJ 插件后,创建一个 NoSQL 项目,并将其连接到 Oracle NoSQL Database Cloud Service 实例或模拟器。

在 IntelliJ 中创建 NoSQL 项目

了解如何在 IntelliJ 中创建 NoSQL 项目。

此时,请执行以下步骤:
  1. 打开 IntelliJ IDEA。单击文件 > 新建 > 项目
  2. 项目名称项目地点输入值。选择创建
  3. 选择构建系统和 JDK 路径。
  4. IntelliJ 将创建 NoSQL 项目目录,其中包括示例 Java 文件。如果已选择 Maven 作为构建系统,则项目目录还包括一个 pom.xml 文件。
  5. 确保为 Oracle NoSQL 项目启用了通知。要启用通知,请按 Alt+\ 打开主菜单。单击查看,展开工具窗口 > 通知。通知图标 通知铃图标 出现在右侧工具窗口栏中。
在 IntelliJ 中成功创建 NoSQL 项目后,可以将项目连接到 Oracle NoSQL Database Cloud Service 或模拟器。

从 IntelliJ 连接到 Oracle NoSQL Database Cloud Service

了解如何使用 IntelliJ 插件将 NoSQL 项目连接到 Oracle NoSQL Database Cloud Service

此时,请执行以下步骤:
  1. 在 IntelliJ 中打开 NoSQL 项目。
  2. 单击模式浏览器窗口中的任务图标 任务图标 以打开插件的设置对话框。
  3. 在设置浏览器中展开工具 > Oracle NoSQL ,然后单击连接
  4. 从概要信息类型的下拉菜单中选择。您可以在连接下拉列表中查看云概要信息类型的所有现有连接。
  5. 单击添加连接。您可以通过两个选项来创建连接。
    1. 使用配置文件:指定配置文件路径,该路径指向本地系统上存储的 OCI 配置文件的位置。此文件包含连接到 Oracle NoSQL Database Cloud Service 所需的基本参数,例如区域、租户 ID、用户 ID、指纹、密码短语和私钥路径。

      输入以下连接参数的必需值,然后选择 ADD 。然后选择 OK

      表 - 连接参数配置文件选项

      Parameter (参数) 说明 示例值
      连接名称 从插件版本 1.5.1 中,为特定连接规范指定的唯一名称是必需的。建议在从版本 1.4.0 或更低版本升级插件后更新“连接名称”字段。

      注意:

      您可以添加多个连接,并且存储的连接规范是持久性的。
      ndcs_con1
      配置文件 在本地系统中存储配置文件的目录的路径。有关配置文件及其内容的更多信息,请参见 Authentication to connect to Oracle NoSQL Database 中的用户主用户方法。 ~/.oci/config
      概要文件 概要文件名。

      注意:

      您可以为这些条目创建具有不同值的多个概要文件,然后可以指定要加载的概要文件。
      DEFAULT
      划分(可选) NoSQL 数据库方案的区间 OCID/区间名称。

      注意:

      指定区间名称时,需要指定整个层次结构,并使用冒号分隔每个条目。
      developers:dev1.

      此处 dev1 是区间 developers. 下的一个区间

      注意:

      如果未指定值,则默认为根区间。

      该插件连接到配置文件中指定的区域。

      如果使用基于会话令牌的验证,配置文件将包括指定的会话令牌配置文件以及令牌路径。要连接到 Oracle NoSQL Database Cloud Service ,必须选择配置文件选项并指定相应的配置文件。

    2. 高级:您可以直接指定连接到 Oracle NoSQL Database Cloud Service 所需的连接参数。输入以下参数的必需值,然后选择 ADD 。然后选择 OK

    表 - 连接参数高级选项

    Parameter (参数) 说明 示例值
    连接名称 从插件版本 1.5.1 中,为特定连接规范指定的唯一名称是必需的。建议在从版本 1.4.0 或更低版本升级插件后更新“连接名称”字段。

    注意:

    您可以添加多个连接,并且存储的连接规范是持久性的。
    ndcs_con1
    端点 Oracle NoSQL Database Cloud Service 的区域网络访问点。 https://nosql.us-ashburn-1.oci.oraclecloud.com (表示北美区域中的阿什本 Oracle NoSQL Database Cloud Service 区域标识符)。有关服务端点的列表,请参阅数据区域和关联服务端点
    租户 ID 和用户 ID 租户 Oracle NoSQL Database Cloud Service 的 OCID 和用户的 OCID。 请参阅 Oracle Cloud Infrastructure 文档中的 Where to get the Tenancy's OCID and User's OCID
    指纹和密码短语(可选) 生成和上载 API 签名密钥时创建的签名密钥的指纹和口令短语。
    请参阅 Oracle Cloud Infrastructure 文档中的以下资源:
    私有密钥 为用户生成的私有密钥。 对于应用程序用户,必须生成并上载 API 签名密钥。请参见 How to Generate an API Signing Key 以使用可选口令短语生成签名密钥。
    区间(可选) NoSQL 数据库方案的区间 OCID/区间名称。

    注意:

    指定区间名称时,需要使用冒号分隔每个条目来指定整个层次结构。
    developers:dev1.

    此处 dev1 是区间 developers. 下的一个区间

    注意:

    如果没有指定值,则默认为根区间。

    注意:

    1. 从版本 1.5.4 开始,IntelliJ 插件会自动下载最新的 Oracle NoSQL Java SDK,并在创建连接时设置 SDK 路径。
    2. 如果从版本 1.4.0 或更低版本更新插件,则所有存储的连接都将迁移到新版本。在这种情况下,连接名称将与端点相同。按照以下步骤更改连接名称。
  6. IntelliJ 插件将连接详细信息保存在指定的连接名称中。要修改连接详细信息,请在连接的下拉列表中选择连接名称。单击 修改连接。您可以更改任何连接参数(如上所述),然后单击确定以保存设置。要从插件中删除连接名称,请选择连接名称,然后单击删除连接。确认要删除的操作后,将从插件中删除连接名称。
  7. 单击方案浏览器中的 Web 图标。现有连接的列表将显示在下拉框中。连接名称将按以下格式显示在 NoSQL 工具窗口中:

    表 - 连接显示

    用于创建连接的选项 在 NoSQL 工具窗口中显示
    Advanced Connection Name:Endpoint:Compartment Name/OCID (如果不是根目录)
    Use Configuration File Connection Name:Configuration file path:Profile:Compartment Name/OCID(如果不是根目录)

    选择连接,然后单击确定。IntelliJ 插件将项目连接到 Oracle NoSQL Database Cloud Service ,并在 Schema Explorer 窗口中显示其方案。

将项目成功连接到 Oracle NoSQL Database Cloud Service 后,可以管理方案中的表和数据。

从 IntelliJ 连接到 Oracle NoSQL Database Cloud Simulator

了解如何使用 IntelliJ 插件将 NoSQL 项目连接到 Oracle NoSQL Database Cloud Simulator

此时,请执行以下步骤:
  1. 下载并启动 Oracle NoSQL Database Cloud Simulator 。请参阅下载 Oracle NoSQL Database Cloud Simulator
  2. 在 IntelliJ 中打开 NoSQL 项目。
  3. 单击模式浏览器窗口中的任务图标 任务图标 以打开插件的设置对话框。
  4. 在设置浏览器中展开工具 > Oracle NoSQL ,然后单击连接。您可以在连接下拉列表中查看 Cloudsim 配置文件类型的所有现有连接。
  5. 从配置文件类型的下拉菜单中选择 Cloudsim
  6. 单击 Add Connection 。输入以下连接参数的值,然后单击确定

    表 - 连接参数

    Parameter (参数) 说明 示例值
    连接名称 从插件版本 1.5.1 中,为特定连接规范指定的唯一名称是必需的。建议在从版本 1.4.0 或更低版本升级插件后更新“连接名称”字段。

    注意:

    您可以添加多个连接,并且存储的连接规范是持久性的。
    nosql_sim1
    服务 URL 运行 Oracle NoSQL Database Cloud Simulator 的 IP 地址和端口。 默认值为 http://localhost:8080
    租户标识符 用于标识租户的唯一标识符。 默认值为 exampleId。如果要测试示例,请保留此值。

    注意:

    1. 从版本 1.5.4 开始,IntelliJ 插件会自动下载最新的 NoSQL Java SDK,并在创建连接时设置 SDK 路径。
    2. 如果从版本 1.4.0 或更低版本更新插件,则所有存储的连接都将迁移到新版本。在这种情况下,连接名称将与端点相同。按照以下步骤更改连接名称。
  7. IntelliJ 插件将连接详细信息保存在指定的连接名称中。要修改连接详细信息,请在连接的下拉列表中选择连接名称。单击 修改连接。您可以更改任何连接参数(如上所述),然后单击确定以保存设置。要从插件中删除连接名称,请选择连接名称,然后单击删除连接。确认要删除的操作后,将从插件中删除连接名称。
  8. 单击方案浏览器中的 Web 图标。现有连接的列表将显示在下拉框中。连接名称将按以下格式显示在 NoSQL 工具窗口中:
    Connection Name:service Url : Tenant Identifier

    选择连接,然后单击确定。IntelliJ 插件将项目连接到 Oracle NoSQL Database Cloud Simulator ,并在 Schema Explorer 窗口中显示其方案。

    注意:

    在将项目连接到 Oracle NoSQL Database Cloud Simulator 之前,它必须先启动并运行。否则,您的连接请求将在 IntelliJ 中失败。
将项目成功连接到 Oracle NoSQL Database Cloud Simulator 后,您可以管理方案中的表和数据。

使用 IntelliJ 插件管理表

了解如何在 Oracle NoSQL Database Cloud ServiceOracle NoSQL Database Cloud Simulator 中从 IntelliJ 创建表和查看表数据。

连接到 Oracle NoSQL Database Cloud SimulatorOracle NoSQL Database Cloud Service 后,您可以下载 Oracle NoSQL Database Java SDK 并执行示例来创建示例表。在 IntelliJ 插件的帮助下,您可以在“Schema Explorer(方案浏览器)”窗口中查看表及其数据。
执行以下步骤可执行程序:
  1. GitHub 下载最新的 Oracle NoSQL Database Java SDK。
  2. 提取(解压缩)本地系统信息库中下载的文件。
  3. 启动 IntelliJ IDEA 并打开连接到 Oracle NoSQL Database Cloud Service 或模拟器的 NoSQL 项目。
  4. 项目浏览器窗口中,找到本地系统信息库并打开 BasicTableExample 脚本。您可以在 oracle-nosql-java-sdk 下的 examples 文件夹中找到此项。此程序将创建一个名为 audienceData 的表,向此表中添加两行,查询插入的行,删除插入的行,最后删除 audienceData 表。
  5. 要传递所需的参数,请单击运行 > 编辑配置。根据连接类型,输入以下程序参数,然后单击确定

    表 - 程序参数

    连接类型 程序参数 更多信息
    Cloudsim http://localhost:8080 如果在其他端口上启动了 Oracle NoSQL Database Cloud Simulator ,则必须将 8080 替换为该端口号。
    us-ashburn-1 -configFile D:\OCI_PROP\config 第一个参数指示 Oracle NoSQL Database Cloud Service 的数据区域。第二个参数传递一个配置文件,其中包含用于连接到 Oracle NoSQL Database Cloud Service 的身份证明。有关配置文件及其内容的更多信息,请参见 Authentication to connect to Oracle NoSQL Database 中的用户主用户方法。
  6. 要执行此程序,请单击运行 > 运行 'BasicExampleTable' 或按 Shift + 10
  7. 验证终端中的日志以确认代码已成功执行。您可以看到指示表创建、行插入等的显示消息。

    提示:

    由于 BasicExampleTable 删除插入的行并删除 audienceData 表,因此无法在方案浏览器中查看此表。如果要查看方案浏览器中的表,请注释删除插入行并删除表的代码,然后重新运行程序。
  8. 查看表及其数据:
    1. 找到方案浏览器,然后单击 “刷新”图标 图标以重新加载方案。
    2. 在租户标识符下找到 audienceData 表,然后展开该表以查看其列、主键和分片键详细信息。
    3. 双击表名以查看其数据。或者,可以右键单击该表,然后选择浏览表
    4. 记录查看器窗口将显示在主编辑器中。单击执行以运行查询并显示表数据。
    5. 要单独查看单个单元格数据,请双击该单元格。

使用 IntelliJ 执行 DDL 操作

可以使用 IntelliJ 执行 DDL 操作。

CREATE TABLE

  • 找到方案浏览器,然后单击刷新图标以重新加载方案。
  • 右键单击连接名称,然后选择创建表
  • 在提示中,输入新表的详细信息。可以采用两种模式创建 Oracle NoSQL Database 表:
    • ** 简单 DDL 输入 **:可以使用此模式以声明方式创建表,即不编写 DDL 语句。
    • ** 高级 DDL 输入 **:可以使用此模式通过 DDL 语句创建表。
  • 您可以选择在创建 DDL 语句之前查看该语句。单击显示 DDL 可查看基于在简单 DDL 输入模式下字段中输入的值形成的 DDL 语句。单击“Create(创建)”时将执行此 DDL 语句。
  • 单击创建创建表。
  • 要创建子表,请右键单击所需的表,然后选择创建子表。可以采用两种模式创建子表:
    • ** 简单 DDL 输入 **:只需输入表名以及其他必需的详细信息,即可使用此模式创建子表。
    • ** 高级 DDL 输入 **:可以使用此模式通过 DDL 语句创建子表。

    有关子表的更多详细信息,请参阅 Oracle NoSQL Database Cloud Service Guide 中的 Table Hierarchies

  • 单击创建可创建子表。
  • 您可以选择在创建表后查看 DDL 语句。右键单击现有表。选择查看表 DDL 。要复制 DDL 语句,请单击 Copy to Clipboard 。单击确定可关闭对话框。

删除表

  • 找到方案浏览器,然后单击“Refresh(刷新)”图标以重新加载方案。
  • 右键单击要删除的表。选择删除表
  • 此时将显示一个确认窗口,单击确定以确认放置操作。

创建索引

  • 找到方案浏览器,然后单击“Refresh(刷新)”图标以重新加载方案。
  • 右键单击需要创建索引的表。选择创建索引
  • 在“创建索引”面板中,可以选择在两种模式下创建索引:
    • ** 基于表单的索引创建(简单 DDL 输入)**:输入用于创建索引而不写入任何 DDL 语句的详细信息。指定索引的名称以及要包含在索引中的列。如果列的数据类型为 JSON,则会显示一个名为 "JSON Path to Index Field" 的附加字段。输入 JSON 字段位置的路径,然后选择其数据类型。
    • ** 将索引创建为 DDL 语句(用于高级 DDL 输入)**:输入有效的 DDL 语句以创建索引。它还可以包括复杂数据类型,例如数组、映射和记录。
  • 单击添加索引

删除索引

  • 找到方案浏览器,然后单击“Refresh(刷新)”图标以重新加载方案。
  • 单击目标表可查看列出的列、主键、索引和分片键。
  • 找到必须删除的目标索引,然后右键单击它。单击删除索引
  • 此时将显示一个确认窗口,单击确定以确认放置操作。

添加列

  • 找到方案浏览器,然后单击“Refresh(刷新)”图标以重新加载方案。
  • 右键单击需要添加列的表。选择添加列
  • 可以采用两种模式添加新的列:
    • 简单 DDL 输入:可以使用此模式添加新列,而无需编写 DDL 语句。如果是二进制或固定二进制文件,请选择数据类型 Binary。对于固定二进制文件,在 Size 字段中输入文件大小,如果是二进制数据类型,则将该字段保留为空值。
    • 高级 DDL 输入:可以使用此模式通过提供有效的 DDL 语句向表中添加新列。此模式还可以创建复杂数据类型的列。例如,数组、映射或记录,以及嵌套格式。
  • 在这两种模式下,请指定列的名称并使用列的属性(数据类型、默认值以及列是否可为空)来定义列。
  • 单击添加列

删除列

  • 找到方案浏览器,然后单击“Refresh(刷新)”图标以重新加载方案。
  • 单击目标表可查看列出的列、主键、索引和分片键。
  • 找到必须删除的目标列,然后右键单击它。单击删除列
  • 此时将显示一个确认窗口,单击确定以确认放置操作。

冻结/UnFreeze 方案

您需要先冻结单例表的方案,然后再使其成为全局活动表。冻结表方案后,将无法对该方案进行任何更改。要冻结单例表的方案,它应至少具有一个 JSON 列。右键单击该表,然后选择冻结/解冻。确认后,表的方案将被冻结。同样,要取消冻结表的方案,请右键单击该表,然后选择冻结/取消冻结。确认后,表的方案将更改回可变,这意味着方案可以更改。

注意:

需要先删除表区域副本(表必须是单例表),然后才能执行解冻操作。

管理副本

要了解什么是副本以及如何通过添加区域副本将单例表转换为全局活动表,请参见 Regional Table Replicas

添加副本

可以将区域副本添加到单例表,使其成为全局活动表或将副本添加到现有全局活动表。在向表添加副本之前,应先冻结该表。右键单击该表,然后从区域副本中选择添加副本。可以从复制区域的下拉列表中选择副本。可以决定该复制区域中表的读取单位数和写入单位数。无法在副本中更改/编辑表的磁盘存储值。单击 Add Replica 。将在该区域中复制表。

查看副本

右键单击该表,然后从区域副本中选择查看副本。您可以查看表的副本列表。

删除副本

右键单击该表,然后从区域副本中选择删除副本。单击添加,然后选择要删除的副本。您可以选择一次删除多个副本。如果要从需要删除的副本列表中删除副本,请单击删除。单击删除副本。确认后,将从所有选定副本中删除该表。

编辑预留容量

您可以编辑表的保留容量和使用模型。右键单击该表,然后选择编辑保留容量。您可以选择以下两种容量模式之一:预配容量或按需容量。编辑值并单击应用更改

如果编辑的表是全局活动表:
  • 存储容量更改具有全局范围(一个区域表副本中的更改将自动传播到所有区域表副本)。
  • 读取单位数、写入单位数或容量模式从“按需”更改为“已预配”,反之亦然,更改具有本地范围(仅在启动该更改的区域表副本中更改)。

使用 IntelliJ 执行 DML 操作

可以使用 IntelliJ 插件添加数据、修改现有数据以及从表中查询数据。

插入数据

  • 找到 Schema Explorer ,然后单击 Refresh(刷新)图标以重新加载方案。
  • 右键单击需要插入行的表。选择插入行
  • 在“插入行”面板中,输入插入新行的详细信息。可以采用两种模式插入新 ROW:
    • 简单输入:可以使用此模式插入新行,而无需编写 DML 语句。在此加载基于表单的行字段条目,您可以在其中输入行中每个字段的值。
      • 对于二进制数据类型,键入的字符串应为二进制值的有效 Base64 编码,或者选择要在所需列中上载的文件。
      • 对于固定二进制数据类型,键入的字符串应为二进制值的有效 Base64 编码,或者上载在创建特定列期间定义的大小文件。

      注意:

      为二进制数据类型上载的文件格式应仅具有 .bin 扩展名。
    • 高级 JSON 输入:您可以使用此模式通过提供包含列名及其对应值的 JSON 对象作为键 - 值对来向表中插入新行。输入也可以是复杂的数据类型,即数组、映射、记录。
  • 单击插入行

修改数据 - UPDATE ROW/DELETE ROW

  • 找到 Schema Explorer ,然后单击 Refresh(刷新)图标以重新加载方案。
  • 右键单击需要插入行的表。选择浏览表
  • 在左侧的文本框中,输入 SQL 语句以从表中提取数据。单击执行以运行该语句。
  • 要单独查看单个单元格数据,请单击表单元格。
  • 要执行“Update(更新)”和“Delete Row(删除行)”等 DML 操作,请右键单击特定行。从显示的上下文菜单中选择您的选项。
    • 删除行:此时将显示一个确认窗口,单击确定删除该行。
    • 更新行:将打开一个单独的 HTML 窗口,其中显示列名及其对应的值。可以采用两种模式为行数据输入新值:基于表单的行字段输入(简单 DDL 输入)将行内容作为 JSON 对象(高级 DDL 输入)提供。在高级 DDL 输入模式下,JSON 数据以树结构形式显示,以简化查看和更新。

      选择执行可刷新和查看更新的数据。

      注意:

      在任何行中,都不能更新 PRIMARY KEY 和 GENERATED ALWAYS AS IDENTITY 列。

表查询

  • 找到 Schema Explorer ,然后单击 Refresh(刷新)图标以重新加载方案。
  • 右键单击该表,然后选择浏览表
  • 在左侧的文本框中,输入 SELECT 语句以从表中提取数据。当您开始键入查询时,系统会提示您提供可自动完成 SQL 语句的单词列表。提示中提供了给定表的所有 SQL 关键字和列名,以自动完成 SQL 语句。
  • SQL 语法在每个查询中都会突出显示,这样可以提供更好的 SQL 编写体验。
  • 您可以设置查询的格式以提高其可读性。选择查询,右键单击并选择 Prettify 。查询已设置格式并换行以提高可读性。
  • 单击执行以运行查询。将从表中检索相应的数据。双击检索到的数据后,列数据将在新窗口中打开。任何 JSON 数据都以树结构显示在新窗口中。单击 ' + ' 展开,或单击 ' - ' 折叠树结构。在新窗口中单击 Ctrl ^F 以启用搜索选项,通过该选项可以搜索 JSON 树中的任何值。单击向上或向下箭头可分别移动到上一个或下一个搜索匹配项。
  • 右键单击任意行,然后单击下载 JSON 。在该对话框中,导航到要保存文件的位置,然后单击保存。下载文件后,屏幕右下方会显示一条通知。单击该链接以打开下载的文件。该文件将在浏览器中打开。
    • 对于二进制数据类型,只需在输出中单击 Download Binary Object(下载二进制对象)
  • 单击下载查询结果可下载查询结果中的所有数据。在该对话框中,导航到要保存文件的位置,然后单击保存。对于多行,屏幕右下方会显示一个进度条,以显示实时下载的行数。下载文件后,屏幕右下方会显示一条通知。单击该链接以打开下载的文件。该文件将在浏览器中打开。
  • 单击显示查询计划可查看查询的执行计划。
  • 单击 Previous Commands(上一个命令)下拉列表,查看最近执行的已提供输出的前 20 个 SQL 语句。

    注意:

    下拉列表将仅显示与您正在处理的表相关的 SQL 语句。

模式浏览器

  • Schema Explorer(方案浏览器)窗口中,可以验证特定列的完整数据类型。找到特定列,数据类型后跟列名。