我试图理解数据库规范化,我理解一般的想法,但什么是正确的方法,什么是多余的。
例如,我有一个标准的员工部门数据库作为第一步。
表是
EMPLOYEES:
id, first_name, last_name, dob, email, city, address, department_name
因此,为了将其标准化为第一步,我会将部门名称移动到单独的表中,并在必要时以多对一的形式加入。
EMPLOYEES:
id, first_name, last_name, dob, email, city, address, department_id
DEPARTMENTS
id, name
这是否足以进行规范化,还是将所有其他字段移动department_id
到第二个表(例如)更好employees_meta
?想象一下,如果我们在描述员工的表中还有 20 个字段,那么什么是正常的?
如果我们谈论的是优化网页,正确的规范化是否只有我们在处理员工表时总是显示的字段,以及我们不经常使用的所有其他信息移动到不同的表?