软件危机(understanding)软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重的问题 软件危机的表现 对开发成本和进度的估计往往很不准确 用户对“已完成的”软件系统不满意的现象时常发生 软件质量差 软件通常难以维护 软件没有适当的文档资料 软件成本在计算机系统的总成本中所占 ...
数据库笔记(补充)——分解算法浅析
写在前面:今天笔者将会对BCNF和3NF分解算法做简要的分析,不过实际上大多数的分解用肉眼即可,以下分解算法不依赖于过多的条件可以直接讲一个满足1NF的模式分解为3NF或BCNF BCNF 分解算法 教材上关于BCNF分解算法的伪代码实现有部分印错(本科教学版) 该算法的结果是一个满足BCNF ...
数据库笔记(补充)——候选码的确定方法
写在前面:前面一堆都了解了解,重点在后面一个关于求候选码的算法(要是题里面没有给主属性,就要通过这个方法求哪些是主属性,哪些不是了,所以还是挺实用的) 候选码定义: 设K为关系模式R<U, F>的属性(组),若K→FU,则称K为R的 候选码。 主码:若R有多个候选码,则可以从 ...
数据库笔记(补充)——数据库设计和E——R模型
实体—联系模型 实体集 实体(entity):现实世界中一个可以区别于其他对象的一个“事物”或对象 实体集(entity set):相同类型(即具有相同性质/属性)的实体的集合 外延(extension):属于实体集的实体的实际集合 ps: 实体集和外延的关系类似于之前讲的模式和实例的关系 ...
数据库笔记(十二)——函数依赖理论和分解算法
函数依赖理论 逻辑蕴涵 定义: 存在如下条件 关系模式:r(R) 依赖集:F (由一个或多个依赖组成) 依赖:f 若r(R)满足F ==> r(R)满足f 我们称 F 逻辑蕴涵 f ps: 其中f可由F通过Armstrong公理推得 举个栗子: 给定关系模式 r(A, B, ...