RubyMine 2025.2 Help

外键

外键关系指定表之间的关系,并表示表之间的关系。 RubyMine 识别数据库架构中的外键关系,并使用它们构造 JOIN 子句。 您可以在自动完成列表、数据导航和图表中看到这些关系。

在 RubyMine 中,您可以使用显式外键或创建 虚拟外键

外键(外键 )可以在 数据库 工具窗口中找到。

数据库 中的外键

一个 foreign key是一个表中的字段或字段集合,用于引用另一个表中的primary key。 当您创建或修改表时,您可以清楚地定义这些键:

CREATE TABLE visitor ( id int NOT NULL, activity_id int NOT NULL, PRIMARY KEY (id), FOREIGN KEY (activity_id) REFERENCES activity(activity_id) );

包含外键的表是子表。 包含候选键的表是被引用的或目标表。 如果您的数据库包含显式外键关系,RubyMine 会自动在自动补全、数据导航和图表中使用它们。

在以下示例中, activity.activity_id 是主键,而 visitor.activity_id 是外键。

显式外键

创建外键

  1. 数据库 工具窗口中,展开数据源树直到表的节点。

  2. 右键单击表节点并选择 新建 | 外键

  3. 在打开的 修改 对话框中,在 名称 字段中输入您的外键名称。

  4. 目标表 窗格中,指定目标表的名称。

  5. 窗格中,点击 添加 按钮("添加"按钮)。

  6. 列名 字段中,指定子表中的列名。

  7. 目标名称 字段中,指定目标表中列的名称。

  8. 预览(P) 窗格中,您可以查看和更改生成的 SQL 代码。

  9. 单击 确定 以添加您的外键。

创建外键

提高效率的提示

修改生成的索引和键名称的模板

当您创建索引及主键和外键约束时,其默认名称是根据相应的模板生成的。 例如,对于主键,模板是 {table}_{columns}_pk

  • 要查看和修改这些模板,请打开设置 Ctrl+Alt+S 并导航到 编辑器 | 代码样式 | SQL | 常规。 点击 代码生成 选项卡。

    模板可以包含变量和文本。 当您生成名称时,指定的文本会被原样复制。 例如,当您在 actor 表中应用 {table}_pk 模板时,生成的主键名称将是 actor_pk

    要查看有关变量及其用法的信息,请单击字段并按 Ctrl+Q

    {unique?u:} 检查索引是否唯一,并插入相应的字符序列。 如果索引是唯一的,模板会生成一个名称,其中包含在 ?: 之间指定的字符序列。 对于 {unique?u:} 模板,它是 u。 如果索引不是唯一的,则会插入 :} 之间的序列。 对于 {unique?u:} 模板,它为空。

    示例

    您有一个 persons 表,其中包含列 FirstNameLastName{table}_{columns}_{unique?u:}index 模板为非唯一索引生成以下名称: persons_FirstName_LastName_index

    修改生成的索引和键名称的模板
  • 右键点击表格中的一行或单元格,然后选择 转到 | 相关行

    或者,选择一个单元格并单击快速操作弹出工具栏上出现的 相关行图标相关行

    引用数据和被引用数据

    在数据编辑器中,您可以选择多个值并导航到相关数据。

    有关操作行为选项的更多信息,请参阅 高级设置

最后修改日期: 2025年 9月 26日