关系数据理论
1、规范化
一个低一级范式的关系模式通过模式分解可以转换为若干个高一级范式的关系模式的集合,这种过程就叫规范化。
1)函数依赖
①属性闭包:由一个/多个属性直接或间接推导出的属性集合
②阿姆斯特朗公理:
自反律:若Y⊆X⊆U,则X→Y为F所蕴含。
增广律:若X→Y为F所蕴含,且Z⊆U,则XZ→YZ为F所蕴含。
传递律:若X→Y及Y→Z为F所蕴含,则X→Z为F 所蕴含。
③求等价的最少的函数依赖集
2)第二范式(2NF)
若 R∈1NF,且每一个非主属性完全函数依赖于任何一个候选码,则 R∈2NF
例如:SLC 的码为(Sno,Cno),Sdept 和 Sloc 依赖于 Sno,不依赖于 Cno,则不满足第二范式
3)第三范式(3NF)
若 R∈2NF,且非主属性不能有传递依赖
例如:SLC 的码为(Sno,Cno),Sno 决定 Sdept,Sdept 决定 Sloc,存在 Sno->Sdept->Sloc
这样的传递依赖,则不满足第三范式
4)BCNF
若 R∈3NF,且不能有主属性对码的部分依赖和传递依赖
数据库编程
1、标准 SQL 缺点和 SQL 编程技术优点
标准 SQL 是非过程化的查询语言,缺少流程控制能力,难以实现应用业务的逻辑控制
SQL 编程技术可以有效克服 SQL 语言实现复杂应用方面的不足,提高应用系统和数据库管理
系统间的互操作性。
2、存储过程
定义:存储过程是由过程化 SQL 语句书写的过程,这个过程经编译和优化后存储在数据库服务器
中。
作用:运行效率高,因为是被编译后保存在数据库中的;降低了客户机和服务器的通信量;方便实施企业规则
3、JDBC 编程
是为解决异构数据库间的数据共享而产生的,它建立了一组规范,并提供了一组访问数据库的应用程序编程接口(API)。JDBC 具有两重约束力:一方面规范应用开发,另一方面规范关系数据库管理系统应用接口