这是我的ERD:
我试图规范化这个 ERD,下面是我到目前为止所做的:
Country(CountryID{PK}, CountryName)
City (CityID{PK}, CityName, CountryID{FK})
Manager (username{PK}, password, ManagerName)
Airport (AirportID{PK}, AirportName, ICAO, IATA, ManagerUserName{FK}, CityID{FK})
Airline (AirlineID{PK}, AirlineName, IATA, ICAO)
AirportAirlineOffice (AirlineID{FK}, AirportID{FK}, Officeno) both FK = PK
Airplane (AirplaneID{PK}, Model, Make, AirlineID{FK}, AirportID{FK})
我正在尝试规范化到第 3 范式,所以基本上我正在尝试实现功能依赖并消除过渡依赖。我有一些令我困惑的问题:
- 在飞机表中,品牌和型号应该保持原样还是应该转移到新表中?
- 在 Airport 表中,我应该将 ICAO 和 IATA 代码标识符转移到新表吗?
- 航空公司表中的 IATA 和 ICAO 也是如此。
- 考虑到 3NF,经理表是否需要任何更改?
问候