【问题标题】:Normalizing database MySQL规范化数据库 MySQL
【发布时间】:2015-03-29 14:58:57
【问题描述】:

表格值:

标签描述:

是否归一化为 1NF、2NF、3NF?据我所知,如果我理解规范化,它就不能再分裂了。我说的对吗?

【问题讨论】:

    标签: mysql database database-normalization


    【解决方案1】:

    我们仍然可以将上述结构归一化如下

    udegid, userid, designationid,designatedon,revokedon,status

    其中 udegid 是该表的 guid。

    对于我们可以拥有的部门也是如此 udeptid, userid, deptid, effectivefrom, effectiveto,status

    这种方法使您能够在员工的整个生命周期内跟踪员工指定和部门的历史记录。

    HTH

    【讨论】:

    • 违反了哪个 NF?
    • 表的每个非主属性都依赖于每个候选键的整体...如果您要跟踪部门/设计历史记录,非主属性中的冗余
    • 你能举个例子吗?
    • select dept from table where userid='a' 这仅选择部门
    • 如何在不重复员工ID的情况下处理员工部门/职务历史数据,它变得多余。就像我可能开始我的工程师职业生涯一样,几年后,我毕业到 sr.engineer 等等...... HTH
    猜你喜欢
    • 2011-12-16
    • 2013-07-17
    • 2011-05-18
    • 1970-01-01
    • 2011-11-12
    • 1970-01-01
    • 1970-01-01
    • 2012-03-08
    相关资源
    最近更新 更多