数据库三大范式
2016-03-21 14:16
337 查看
初始表:【学号,姓名,年龄,地址,课程名称,学分,成绩,所在学院,学院地点,学院联系电话】
第一范式:列不可再分。上表地址是可再分的,不符合第一范式,修改后为:【学号,姓名,年龄,省,市,县,课程名称,学分,成绩,所在学院,学院地点,学院联系电话】
第二范式:非主键必须完全依赖主键,而不是部分依赖。上表中一个学号有多门课程,多个成绩。因此不符合第二范式,可以拆成【学号,姓名,年龄,省,市,县,所在学院,学院地点,学院联系电话】,【课程名称,学分】,【学号,课程名称,成绩】
第三范式:非主键必须直接依赖主键,不存在传递依赖。表:【学号,姓名,年龄,省,市,县,所在学院,学院地点,学院联系电话】中,学院地点和学院联系电话不直接依赖学号,而是依赖所在学院,因此不符合第三范式,可拆分成:【学号,姓名,年龄,省,市,县,所在学院】【学院,学院地点,学院联系电话】
第一范式:列不可再分。上表地址是可再分的,不符合第一范式,修改后为:【学号,姓名,年龄,省,市,县,课程名称,学分,成绩,所在学院,学院地点,学院联系电话】
第二范式:非主键必须完全依赖主键,而不是部分依赖。上表中一个学号有多门课程,多个成绩。因此不符合第二范式,可以拆成【学号,姓名,年龄,省,市,县,所在学院,学院地点,学院联系电话】,【课程名称,学分】,【学号,课程名称,成绩】
第三范式:非主键必须直接依赖主键,不存在传递依赖。表:【学号,姓名,年龄,省,市,县,所在学院,学院地点,学院联系电话】中,学院地点和学院联系电话不直接依赖学号,而是依赖所在学院,因此不符合第三范式,可拆分成:【学号,姓名,年龄,省,市,县,所在学院】【学院,学院地点,学院联系电话】
相关文章推荐
- oracle Plsql 执行update或者delete时卡死问题解决办法
- 解决ssms2012连接远程数据库报错崩溃的问题
- innobackupex 重启MySQL
- oracle client ORA-12541: TNS: 无监听程序
- MySQL中的共享锁与排他锁
- MySQL中的行级锁,表级锁,页级锁
- mysql索引原理及慢查询优化
- MySQL's Sample Database
- 安装oracle遇到的bug及解决方法
- 使用SQL语句优化优化数据库性能
- SQL语句:find_in_set的使用方法
- Oracle定时执行存储过程
- 数据库的锁机制
- SQL Server AlwaysOn
- 互联网架构设计之Redis篇-【Redis Windows版本安装过程】
- SQL Server 2008 R2的发布订阅配置实践
- SQL SERVER 2008 利用发布订阅方式实现数据库同步
- zabbix监控MySQL备份成功失败
- oracle分页查询sql
- 删除数据库数据