我必须在0NF中为我的项目设计表格,我需要先设计0NF表格,然后再进行规范化,然后绘制ERD。然而,获得表的0NF表单对我来说是一个真正的挑战,很多时间被浪费在重新设计上,所以我想向在数据库设计方面可能更有经验的人寻求帮助。
我的数据库是一个租车系统。该系统应记录客户、汽车、雇员、每一次租赁的详细情况,公司还应在不同的地点设立多个分支机构,每个分支机构必须拥有自己的一套独特(根据其车牌号码)的汽车。
到目前为止,我已经想出了这些0NF表,它们在我看来并不正确:
Cars(CarID,LicensePlateNo,Make,型号,年份,颜色,里程,容量,座位,可用性,价格,BranchID,BranchLocation)
Customer(CustomerID,FirstName,LastName,Address,ContactNo,Gender,道布,NIC,RentalID,DateRented,RentalCost)
Agent(AgentID,FirstName,LastName,Address,ContactNo,性别,道布,NIC,MonthlyRentals,Salary,ManagerID,ManagerName,MangerLastName,ManagerAddress,ManagerContact,BranchID,BranchLocation)
Rental(RentalID,DateRented,期限,RentalCost,折扣,AgentID,CarID,LicensePlateNo,Make,Model)
Branch(BranchID,BranchName,BranchLocation,ContactNumber,ManagerID)
发布于 2016-04-10 16:04:42
我已将代理表替换为Employee表,并向其添加了2个新列(Position和Manager)。我认为职位列应该存储“代理”或“经理”。如果雇员是代理,那么Manager字段应该包含他/她的Manager (EmployeeID).的ID如果employee是Manager,则很可能应该将Manager列保留为空。我还删除了正在重复的所有其他列(例如,BranchLocation in ,cars,表等)
汽车(CarID,LicensePlateNo,Make,型号,年份,颜色,里程,容量,座位,可用性,费率,BranchID)
客户(CustomerID,FirstName,LastName,地址,ContactNo,性别,道布,NIC,RentalID)
租金(RentalID,DateRented,工期,RentalCost,折扣,EmployeeID,CarID)
分支(BranchID,BranchName,BranchLocation,ContactNumber,EmployeeID)
员工(EmployeeID,FirstName,LastName,Address,ContactNo,性别,道布,NIC,MonthlyRentals,工资,BranchID,职位,经理)
谢谢
https://stackoverflow.com/questions/36458560
复制相似问题