将表列移动到新表并在PostgreSQL中作为外键引用

时间:2015-04-25 16:18:35

标签: postgresql data-modeling sequel

假设我们有一个包含字段的数据库表 " id"," category"," subategory"," brand"," name"," description& #34;等 什么是为(例如)创建单独表格的好方法 "类别","子类别"和"品牌" 并且原始表中相应的列和行成为外键引用?

概述所涉及的操作: - 获取原始表的每列中应该成为外键的所有唯一值; - 为那些创建表 - 在原始表(或副本)中创建外键引用列

在这种情况下,PostgreSQL数据库是通过Ruby应用程序中的Sequel访问的,因此可用的接口是命令行,Sequel,PGAdmin或(...)

问题:你会怎么做?

2 个答案:

答案 0 :(得分:3)

app/Resources/translations/security.en.yml

答案 1 :(得分:2)

我不确定我是否完全理解你的问题,如果这似乎没有回答,那么请发表评论并可能改进你的问题以澄清,但听起来你想要做{{1} }。例如:

CREATE TABLE xxx AS

然后更改CREATE TABLE category AS (SELECT DISTINCT(category) AS id FROM parent_table); 以添加外键约束。

parent_table

对要创建的每个表重复此操作。

以下是相关文档:

CREATE TABLE

ALTER TABLE

注意:代码和引用适用于Postgresql 9.4