【发布时间】:2016-05-07 00:39:33
【问题描述】:
【问题讨论】:
【问题讨论】:
试试这个创建 3 个表的小 SQL 脚本。我想你会发现这项工作很好。
CREATE TABLE product (
category INT NOT NULL, id INT NOT NULL,
price DECIMAL,
PRIMARY KEY(category, id)
);
CREATE TABLE customer (
id INT NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE product_order (
no INT NOT NULL AUTO_INCREMENT,
product_category INT NOT NULL,
product_id INT NOT NULL,
customer_id INT NOT NULL,
PRIMARY KEY(no),
INDEX (product_category, product_id),
INDEX (customer_id),
FOREIGN KEY (product_category, product_id)
REFERENCES product(category, id)
ON UPDATE CASCADE ON DELETE RESTRICT,
FOREIGN KEY (customer_id)
REFERENCES customer(id)
) ;
【讨论】:
这是一个两步程序。第一步,您必须修改表以添加外键约束定义。第二步,可以显示表格图。
首先,右键单击 DataGrip 中的表格名称,然后选择修改表格。您将看到四个选项卡:Columns、Keys、Indices 和 Foreign Keys。选择 列 选项卡。右键单击要成为外键的列名,然后选择新建外键。该窗口将切换到其 外键 选项卡,其中填写了一些信息。填写您的“目标表”。您可能还必须在 SQL 语句的 REFERENCES 短语中写入目标列名。现在查看修改表窗口中的所有信息,如果满意,请单击“执行”。
其次,再次右键单击 DataGrip 中的表格名称,这次选择 图表 > 显示可视化。您现在应该会看到一个图表,其中显示了原始表和引用表之间的关系。
在 DataGrip 帮助中,您可以查看使用数据库工具窗口页面以了解其修改表、列、索引或主键或外键的定义 em> 部分。那里有一个非常简短的程序说明。
Wikipedia 在其 Defining foreign keys 文章部分中有一个示例,在 DataGrip 的 Modify Table 窗口中工作时可能对您有用。
我在DataGrip 2017.1.3中做了这个过程,不知道其他版本有没有变化。
【讨论】:
通常:从上下文菜单或按 Ctrl+Alt+U。
如果你找到了这张图片,再往下走一步就是深入网站,你会到达这个页面: https://www.jetbrains.com/datagrip/features/other.html
并且有一个解释如何做到这一点。
【讨论】: