规范化数据库 Table
Normalizing Database Table
我被问到一个面试问题,我想确认一下我做对了没有。有一个table叫Employee saving Employee information alogwith monthly salary(假设这个table目前只有年记录)
Employee(ID,Name,Month,Salary)
示例数据:
ID Name Month Salary
1 A Jan 2500
1 A Feb 3000
2 B Jan 4500
2 B Feb 6500
问题是:
Is this table schema alright? If not how will you resolve it?
我对 table 进行了标准化,想知道这是否是对上述 table 进行标准化的正确方法?
Employee(ID,Name)
tblSalary(ID,Emp_ID,Month,Salary)
如果这是一个非常基本的问题,请原谅
根据以下内容,您做对了:
第一范式
- 消除个体中的重复组 table。
- 为每组相关数据创建单独的table。
- 用主键标识每组相关数据。
唯一要指出的是你的 "month" 实体,我会改为日期,因为它限制员工只能受雇一年(正如另一条评论所指出的)
我被问到一个面试问题,我想确认一下我做对了没有。有一个table叫Employee saving Employee information alogwith monthly salary(假设这个table目前只有年记录)
Employee(ID,Name,Month,Salary)
示例数据:
ID Name Month Salary
1 A Jan 2500
1 A Feb 3000
2 B Jan 4500
2 B Feb 6500
问题是:
Is this table schema alright? If not how will you resolve it?
我对 table 进行了标准化,想知道这是否是对上述 table 进行标准化的正确方法?
Employee(ID,Name)
tblSalary(ID,Emp_ID,Month,Salary)
如果这是一个非常基本的问题,请原谅
根据以下内容,您做对了:
第一范式
- 消除个体中的重复组 table。
- 为每组相关数据创建单独的table。
- 用主键标识每组相关数据。
唯一要指出的是你的 "month" 实体,我会改为日期,因为它限制员工只能受雇一年(正如另一条评论所指出的)