外键
外键关系指定表之间的关联方式,并指示表之间的关系。 PyCharm 会识别数据库架构中的外键关系,并使用它们构建 JOIN 子句。 您可以在自动补全列表、数据导航和图表中看到这些关系。
在 PyCharm 中,您可以使用显式外键或创建 虚拟外键。
外键( )位于 数据库 工具窗口中。

外键 是一个表中的字段或字段集合,它引用另一个表中的主键。 创建或修改表时,您可以清晰地定义这些键:
包含外键的表是子表。 包含候选键的表是被引用表或目标表。 如果您的数据库包含显式外键关系,PyCharm 会在自动补全、数据导航和图表中自动使用它们。
在以下示例中, activity.activity_id 是主键,而 visitor.activity_id 是外键。
创建外键
在 数据库 工具窗口中,展开数据源树,直至表的节点。
右键点击表节点并选择 。
在打开的 修改 对话框中,在 名称 字段中输入外键的名称。
在 目标表 窗格中,指定目标表的名称。
在 列 窗格中,点击 添加 按钮(
)。
在 列名 字段中,指定子表中的列名。
在 目标名称 字段中,指定目标表中的列名。
在 预览(P) 窗格中,您可以查看并更改生成的 SQL 代码。
点击 确定 以添加外键。

提高效率的提示
修改生成的索引和键名称的模板
当您创建索引以及主键和外键约束时,将根据相应的模板生成其默认名称。 例如,对于主键,其模板为 {table}_{columns}_pk。
要查看并修改这些模板,请打开设置 Ctrl+Alt+S 并导航到 。 点击 代码生成 选项卡。
模板可以包含变量和文本。 生成名称时,指定的文本将被原样保留。 例如,在
actor表中应用{table}_pk模板时,生成的主键名称将为actor_pk。要查看变量及其用法的信息,请点击某个字段并按 Ctrl+Q。
{unique?u:}会检查索引是否唯一,并插入相应的字符序列。 如果索引是唯一的,模板将生成一个名称,其中包含位于?与:之间指定的字符序列。 对于{unique?u:}模板,为u。 如果索引不是唯一的,将插入位于:与}之间的字符序列。 对于{unique?u:}模板,则不插入任何内容。示例
您有
persons表,其中包含列FirstName和LastName。{table}_{columns}_{unique?u:}index模板会为非唯一索引生成以下名称:persons_FirstName_LastName_index。
在相关行之间导航
在表中右键点击某行或单元格并选择 。
或者,选择一个单元格,然后在出现的快速操作弹出工具栏上点击
相关行。

在数据编辑器中,您可以选择多个值并导航到相关数据。
有关操作行为选项的详细信息,请参阅 高级设置。