【问题标题】:Connect SuperType and SubType连接超类型和子类型
【发布时间】:2018-06-25 17:36:13
【问题描述】:

我必须连接 Supertype Entity Called

Product ( prod_ID (PK) , description , price , type, typeId )

到以下子类型:

Footwear ( typeId(PK, fk), Brandname, Style)

Apparels ( typeId(PK,fk), material, size)

这里的每个产品都是鞋类或服装,在“类型”列中提到。许多产品可以具有相同的类型和类型 ID。如何将 superType 与 subTypes 连接起来?由于类型 id 在产品表中不是唯一的,因此我不能将其用作子类型中的主键。

【问题讨论】:

  • supertype_ownersupertype_name in user_types 应该这样做。但我不确定我是否明白你在问什么。
  • @WilliamRobertson 我尝试将表连接为“创建表鞋类(typeId 主键,品牌名称,样式,外键(typeid)引用产品)”。但这是不允许的,因为 TypeId 在产品表中重复多次
  • 哦,所以这些是表而不是类型。举个例子会有很大帮助。
  • 产品表有条目 ("100","abc",72.00,"footwear", 1) 和 ("101","cde",90.00,"footwear", 1) 。鞋类有整体(1,“耐克”,休闲)。 (2,“彪马”,休闲)。这里产品表中的不同产品可以将类型 1 作为其类型 ID。
  • 我的意思是我们可以自己运行的完整工作测试,包括在问题中。

标签: sql database oracle entity-relationship


【解决方案1】:

试试:

Footwear ( prod_ID (PK, fk), typeId(fk), Brandname, Style)

Apparels ( prod_ID (PK, fk), typeId(fk), material, size)

子类型是子集,因此我们对它们使用相同的标识符。

【讨论】:

  • 是的。这将起作用。我一直在寻找不使用子类型中的 prod_Id 的解决方案。但我想这是不可能的,因为它是一个子集。谢谢
猜你喜欢
  • 1970-01-01
  • 2013-02-05
  • 1970-01-01
  • 1970-01-01
  • 2011-07-24
  • 1970-01-01
  • 2015-03-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多