❶ 数据库原理及应用
数据库原理是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。应用:数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、XML;或依据所支持的计算机类型来作分类,例如服务器群集、移动电话;或依据所用查询语言来作分类。
在数据库的发展历史上,数据库先后经历了层次数据库、网状数据库和关系数据库等各个阶段的发展,数据库技术在各个方面的快速的发展。特别是关系型数据库已经成为目前数据库产品中最重要的一员,80年代以来, 几乎所有的数据库厂商新出的数据库产品都支持关系型数据库,即使一些非关系数据库产品也几乎都有支持关系数据库的接口。
这主要是传统的关系型数据库可以比较好的解决管理和存储关系型数据的问题。随着云计算的发展和大数据时代的到来,关系型数据库越来越无法满足需要,这主要是由于越来越多的半关系型和非关系型数据需要用数据库进行存储管理。
同时,分布式技术等新技术的出现也对数据库的技术提出了新的要求,于是越来越多的非关系型数据库就开始出现,这类数据库与传统的关系型数据库在设计和数据结构有了很大的不同, 它们更强调数据库数据的高并发读写和存储大数据。
(1)数据库原理与设计扩展阅读
数据库管理系统主要完成对数据库的操纵与管理功能,实现数据库对象的创建、数据库存储数据的查询、添加、修改与删除操作和数据库的用户管理、权限管理等。它的安全直接关系到整个数据库系统的安全,其防护手段主要有:
(1)使用正版数据库管理系统并及时安装相关补丁。
(2)做好用户账户管理,禁用默认超级管理员账户或者为超级管理员账户设置复杂密码;为应用程序分别分配专用账户进行访问;设置用户登录时间及登录失败次数限制,防止暴力破解用户密码。
(3)分配用户访问权限时,坚持最小权限分配原则,并限制用户只能访问特定数据库,不能同时访问其他数据库。
(4)修改数据库默认访问端口,使用防火墙屏蔽掉对外开放的其他端口,禁止一切外部的端口探测行为。
(5)对数据库内存储的重要数据、敏感数据进行加密存储,防止数据库备份或数据文件被盗而造成数据泄露。
(6)设置好数据库的备份策略,保证数据库被破坏后能迅速恢复。
(7)对数据库内的系统存储过程进行合理管理,禁用掉不必要的存储过程,防止利用存储过程进行数据库探测与攻击。
(8)启用数据库审核功能,对数据库进行全面的事件跟踪和日志记录。
❷ 数据库原理与应用的一道ER图以及关系模式设计题 跪求啦
数据库设计通常分为6个阶段1(需求分析:分析用户的需求,包括数据、功能和性能需求;2概念结构设计:主要采用E-R模型进行设计,包括画E-R图;3逻辑结构设计:通过将E-R图转换成表,实现从E-R模型到关系模型的转换;4数据库物理设计:主要是为所设计的数据库选择合适的存储结构和存取路径;5数据库的实施:包括编程、测试和试运行;6数据库运行与维护:系统的运行与数据库的日常维护。),主要讨论其中的第3个阶段,即逻辑设计。通过一个实际的案例说明在逻辑设计中E-R图向关系模式的转换。
❸ 数据库原理第五章数据库设计
第五章 数据库设计
67. 什么是念樱软件生存期:
软件生存期是软件工程的一个重要概念。是指从软件的规划、研制、实现、投入羡皮运行后的维护,直到它被新的软件所取代而停止使用的整个期间。通常分为六个阶段:
(1) 规划阶段
(2) 需求分析阶段
(3) 设计阶段
(4) 程序编制阶段
(5) 调试阶段
(6) 运行维护阶段
68. 数据库系统的生存期:
一般分为七个阶段,即:
(1) 规划阶段
(2) 需求分析阶段 1)信息要求 2)处理要求 3)安全性和完整性要求
(3) 概念设计阶段
(4) 逻辑设计阶段 两部分:数据库逻辑设计和应用程序设计
(5) 物理设计阶段 两部分:物理数据库结构的选择和逻辑设计中程序模块说明的精确化
(6) 实现阶段
(7) 运行维护阶段
69. 数据库设计过程的输入有哪些内容:
(1) 总体信息需求
(2) 处理需求
(3) DBMS的特征
(4) 硬件和OS特征
70. 数据库设计过程的输出有哪两部分:
一部分是完整的数据库结构,其中包括逻辑结构与物理结构。
另一部分是基于数据库结构和处理要求的应用程序的设计原则。
71. 常见的数据库设计方法有哪几种:
(1) 视图模式化及视图汇总设计方法
(2) 关系模式的设计方法
(3) 新奥尔良设计方法
(4) 基于E-R模型的数据库设计方法
(5) 基于3NF的设计方法
(6) 基于抽象语法规范的设计方法
(7) 计算机辅助数据库设计方法
72. 实用的数据库设计方法至少应包括哪些内容:
(1) 设计过程
(2) 设计技术
(3) 评价准则
(4) 信息需求
(5) 描述机制
73. 一种设计方法学需要有三种基本类型的描述机制:
(1) 实现设计过程的最终结果将用DBMS的DDL表示。
(2) 信息输入的描述。
(3) 在信息输入和DDL描述之间的其它中间步骤的结果的描述。
74. 数据库设计中的规划阶段的主要任务:
是进行建立数据库的必要性及可行性分析,确定数据库系统在组织中和信息系统中的地位,以及各个数据库之间的联系。
75. 需求分析阶段的任务:
需求分析阶段应该对系统的整个应用情况作全面的、详细的调查,确定企业组织的目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定用户的需求,并把这些要求写成用户和数据库设计者都能接受的文档。
76. 需求分析的步骤:
大致可分为三步来完成,即需求信息的收集、分析整理和评审。
77. 数据字典由哪几部分组成:
(1) 数据项
(2) 数据结构
(3) 数据流
(4) 数据存储
(5) 加工过程
78. 数据抽象:
抽象是对实际的人、物、事或概念的人为处理,它抽取人们关心的共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述,这些概念组成了某种模型。
抽象有两种形式,系统状态抽象(抽象对象)和系统转换抽象(抽象运算)。
79. 对象的两种形式:
(1) 聚集:的数学意义就是笛卡尔积的概念。通过聚集,形成对象之间的一个联系对象。
(2) 概括:是从一类其它对象形成一个对象。对于一类对象{O1,O2,……,On}可以概括成对象O,那么Oi称为O的其中一个。
80. 依赖联系:
在现实世界中,常常有某些实体对于另一些实体具有很强的依赖关系,即一个实体的存在必须以另一个实体的存在为前提。我们通常把前者称为弱实体。在ER图中,用双线框表示弱实体,用指向弱实体的箭头表明依赖联系。
81. 子类、超类:
某个实体类型中所有实体同时也是另一实体类型中的实体。此时,我们称前一实体类型是后一实体类型的子类,后一实体类型称为超类。在ER图中,带有子类的实体类型(超类)以两端双线的矩形框表示,并用加圈的弧线与其子类相连,子类本身仍用普通矩形框表示。
子类具有一个很重要的性质:继承性。它可继承超类上定义的全部属性,其本身还可包含其它另外的属性。
82. ER模型的操作:
(1) 实体类型的分裂:垂直分割、水平分割
(2) 实体类型合并:分裂的逆兄高差过程。
(3) 联系类型的分裂
(4) 联系类型的合并
83. 采用ER方法的数据库概念设计分成哪三步:
(1) 设计局部ER模式:1)确定局部结构范围 2)实体定义 3)联系定义 4)属性分配
(2) 设计全局ER模式:1)确定公共实体类型 2)局部ER模式的合并 3)消除冲突。
(3) 全局ER模式的优化:1)实体类型的合并 2)冗余属性的消除 3)冗余联系的消除
84. 冲突分为哪三种:
属性冲突,包括属性域的冲突、属性取值单位冲突。
结构冲突,包括:
(1) 同一对象在不同应用中的不同抽象。
(2) 同一实体在不同局部ER图中属性组成不同。
(3) 实体之间的联系在不同的局部ER图中呈现不同的类型。
命名冲突,包括属性名,实体名,联系名之间的冲突:同名异义、异名同义
85. ER模型向关系模型的转换:
ER模型中的主要成分是实体类型和联系类型。
对实体类型,将每个实体类型转换成一个关系模式,实体的属性即为关系模式的属性,实体标识符即为关系模式的键。
对联系类型,就视1:1、1:N、M:N三种不同的情况做不同处理。
(1) 对1:1可在两个实体类型转换成的两个关系模式中任意一个关系模式的属性中加入另一个关系模式的键和联系类型的属性。
(2) 对1:N,则在N端实体类型转换成的关系模式中加入1端实体类型转换成的关系模式的键和联系类型的属性。
(3) 对M:N,则将联系类型也转换成关系模式,其属性为两端实体类型的键盘加上联系类型的属性,而键为两端实体键的组合。
86. 什么是物理设计:
对一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程,称为数据库的物理设计。物理结构,主要指数据库在物理设备上的存储结构和存取方法。
87. 物理设计的步骤:
物理设计可分五步完成,前三步涉及到物理数据库结构的设计,后两步涉及约束和具体的程序设计。
(1) 存储记录结构设计
(2) 确定数据存储安排
(3) 访问方法的设计
(4) 完整性和安全性
(5) 程序设计
88. 在数据库系统生存期中,生存期的总开销可分为几项:
规划开销、设计开销、实现与测试开销、操作开销、维护开销。
89. 用户使用和计算机资源的操作开销是:
(1) 查询响应时间
(2) 更新事务的开销
(3) 报告生成的开销
(4) 改组频率和开销
(5) 主存储空间
(6) 辅助存储空间
90. 数据库实现阶段的主要工作:
(1) 建立实际数据库结构
(2) 试运行
(3) 装入数据
91. 数据库的重新组织设计:
对数据库的概念模式、逻辑结构或物理结构的改变称为重新组织,其中改变概念模式或逻辑结构又称为重新构造,改变物理结构则称为重新格式化。
92. 运行维护阶段的主要工作:
(1) 维护数据库的安全性和完整性控制及系统的转储和恢复。
(2) 性能的监督、分析与改进。
(3) 增加新功能。
(4) 发现错误,修改错误。