📄 2.txt
字号:
1.pk:(PartID, SupplierID)
2.FDs:
FD1: PartID->{PartName}
FD2: SupplierID->{SupplierName}
3. The relation is in the first normal form(1NF).
Each attribute of the relation allows a single atomic value, so it is in 1NF.
But some none-primary-key attributes, such as PartName and SupplierName, partially
dependant on the primary key (as FD1 and FD2 show), so it is not in 2NF.
4. Normalization:
1) FD1: PartID->{PartName}
The relation can be decomposited into two relations:
PART(PartID, PartName),FDs={PartID->PartName}, PK:(PartID);
CAN_SUPLY(PartID, SupplierID, SuplierName), FDs={SupplierID->SuplierName), PK:(PartID,SupplierID).
The relation PART is now in the third normal form because the only none-primary-key
attribute PartID, fully (not partially) and directly (not transively) dependants on the primary key PartId.
The relation CAN_SUPPLY is still in the first normal because the only none-primary-key
attribute PartID, partially dependants on the primary key (PartId,SupplierID).
2)CAN_SUPLY(PartID, SupplierID, SuplierName), FDs={SupplierID->SuplierName):
For SupplierID->SuplierName, the relation can be decomposited into two relations:
SUPPLIER(SupplierID,SupplierName),FDs={SupplierID->SuplierName}, PK:(SupplierID);
CAN_SUPLY(PartID, SupplierID), FDs={}, PK:(PartID,SupplierID).
Both relations are in the third normal form, because for each one, no none-primary-key
attribute patially or transively dependants on its primary key.
3) Three 3NF relations:
PART(PartID, PartName),FDs={PartID->PartName}, PK:(PartID);
SUPPLIER(SupplierID,SupplierName),FDs={SupplierID->SuplierName}, PK:(SupplierID);
CAN_SUPLY(PartID, SupplierID), FDs={}, PK:(PartID,SupplierID).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -