我正努力把数据库分解成第一种形式。
注:我已经把数据要求分解成一个联合国基金会的平面文件表,我打算把图片放在下面,但我的声誉还没有超过10。不过,我会列出我的联合国基金会代表
这些是对数据的要求;
驾驶学校联合国基金会的正常代表:
OFFICE(
OfficeID,OfficeName,OfficeAddress,OfficePostcode,ManagerID,ManagerNAME,
ManagerTelephone,
[StaffID,StaffRole,StaffName,StaffSurname,StaffAddress,StaffPostcode,StaffSex,StaffD.O.B,
InstructorID,InstructorName,InstructorSurname,InstructorTelephone, CarID,CarRegistration,CarFaults,FaultDescription,
[ClientID,ClientName,ClientSurname,ClientAddress,ClientPostcode,ClientTelephone,ClientSex,
InterviewID,Interviewer,ValidProvisional LessonID,LessonTime,LessonType,LessonPrice,LessonMileage,LessonProgress,
TestID,TestType,TestResult,Attempts,Failure Reason,Date Achieved]
) 如果你想看联合国基金会,我会给你发电子邮件。
发布于 2012-12-18 13:42:14
您需要下列表格:
ROLES
role_id
role_name
EMPLOYEES
employee_id
forename
surname
role (fk, -> roles.role_id)
telephone
gender
address
postcode
dob如果您要为一个人准备几个电话号码,那么请考虑将它们存储在不同的表中;还要注意单个地址字段的问题。你不应该需要一个单独的教官表;这些员工的角色就是指导员。
OFFICES
office_id
office_name
address
manager (fk, -> employees.employee_id)
CLIENTS
client_id
forename
surname
address
postcode
telephone
gender
has_driving_license
interviewdate
interviewer (fk, -> employees.employee_id)我不认为只要每个客户只接受一次面试,你就不需要一个单独的面试表
CARS
license
description
LESSONS
lesson_id
curdate
client (fk, -> clients.client_id)
instructor (fk, -> employees.employee_id)
car (fk, -> cars.license)
price
invoice
receipt
RESULTS
result_id
description
TESTS
test_id
client (fk, -> clients.client_id)
curdate
result (fk, -> results.result_id)没有必要使用“尝试”字段--您可以计算每个客户端的“test”表中有多少个条目,以便知道每个客户端尝试测试的次数。
我希望这足以让你开始建立一个数据库。
编辑19/12/12:我添加了外键关系和一个新的表,结果。
https://stackoverflow.com/questions/13933403
复制相似问题