将整个表分配给其他表

时间:2012-04-27 21:09:57

标签: mysql sql

让我们假设我有下表

create table Article
(
  ART_ID        bigint not null auto_increment,
  ART_NAME      varchar(25) not null,
  ART_COST      decimal(8,2) not null,
  ART_DESC      text,
  primary key(ART_ID)
);

以及此表

create table Fruits
(
  FRUITS_ID     bigint not null auto_increment,
  FRUITS_TYPE   varchar(15),
  FRUITS_FROZEN timestamp DEFAULT CURRENT_TIMESTAMP,
  primary key(FRUITS_ID )
);

我希望Fruits表格包含表格的所有字段。我该如何实现呢?我应该通过某种关系来引用它还是有另一种技巧?

1 个答案:

答案 0 :(得分:0)

我认为您需要在ARTICLE_ID添加Fruits字段,然后通过FOREIGN KEY约束将其引用到Articles.ART_ID,以确保数据的一致性。< / p>

请注意,这意味着对于每个水果,要设置一些“文章”字段,必须存在Articles中的相应记录。如果您不希望文章字段对于水果是必需的,则可以使ARTICLE_ID字段为空。这仍然允许定义外键,但如果ARTICLE_ID中存储的值不是NULL,它只会强制执行引用。