设某商业集团数据库中有三个实体集。一是“仓库”实体集,属性有仓库号、仓库名和地址等:二是“商店”实体集,属性有商店号、商店名、地址等,三是“商品”实体集,属性 有商品号、商品名、单价。设仓库与商品之间存在“库存”联系,每个仓库可存储若干种商品,每种商品存储在若干仓库中,每个仓库每存储一种商品有个日期及存储量,商店与商品之间存在着“销售”联系,每个商店可销售若干种商品,每种商品可在若干商店里销售,每个商店销售一种商品有月份和月销售量两个属性,仓库、商店、商品之间存在着“供应”联系,有月份和月供应 量两个属性。(2)将ER 图转换成关系模型,并说明主码和外码
时间: 2023-02-05 09:09:26 浏览: 119
在将ER图转换成关系模型时,我们需要将实体集转换成关系,并将实体的属性转换成关系的属性。
在这个例子中,我们可以创建以下关系:
1. 仓库(仓库号,仓库名,地址)
2. 商店(商店号,商店名,地址)
3. 商品(商品号,商品名,单价)
4. 库存(仓库号,商品号,日期,存储量)
5. 销售(商店号,商品号,月份,月销售量)
6. 供应(仓库号,商店号,商品号,月份,月供应量)
其中,主码是指用于唯一标识关系中每一条记录的属性。在上面的例子中,仓库号、商店号、商品号在对应的关系中都是主码。
外码是指在一个关系中引用另一个关系的主码的属性。在上面的例子中,仓库号、商店号、商品号在库存、销售、供应关系中都是外码,因为它们引用了仓库、商店、商品关系的主码。
相关问题
设某商业集团数据库中有三个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。 公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。 1)试画出E-R图,并在图上注明属性、联系的类型。 2)将E-R图转换成关系模型,并注明主键和外键。
对于第一个问题,我是无法提供图形化的E-R图的。但是,我可以为你解答第二个问题。
首先,我们需要将E-R图转换成关系模型。具体步骤如下:
1. 将每个实体集转换成一个关系表,每个属性转换成一个属性列。
2. 将每个联系转换成一个关系表,并在表中包含与关系相关联的实体集的主键列。
3. 对于多对多(M:N)关系,需要创建一个中间表来包含与之相关的实体集的主键列。
根据上述步骤,我们可以将这三个实体集转换成以下关系模型:
- 公司表(Company):
- 公司编号(CompanyID):主键
- 公司名(CompanyName)
- 地址(Address)
- 仓库表(Warehouse):
- 仓库编号(WarehouseID):主键
- 仓库名(WarehouseName)
- 地址(Address)
- 公司编号(CompanyID):外键,与公司表的公司编号关联
- 职工表(Employee):
- 职工编号(EmployeeID):主键
- 姓名(Name)
- 性别(Gender)
- 仓库编号(WarehouseID):外键,与仓库表的仓库编号关联
- 聘期(EmploymentPeriod)
- 工资(Salary)
其中,公司表和仓库表之间的联系为一对多(1:N)关系,仓库表和职工表之间的联系也为一对多(1:N)关系。在仓库表和职工表中,公司编号和仓库编号作为外键,与公司表和仓库表的主键进行关联。
阅读全文