本书目标:
了解数据库的基本概念和范式
熟练使用SMSS、T-SQL实现建库、建表、加约束
掌握T-SQL编程,实现功能强大的查询
掌握创建索引、视图,快速访问数据库
熟悉掌握创建存储过程,实现复杂的业务规则
理解触发器的原理,掌握高级的约束
了解SQLServler安全管理
了解数据库的备份与恢复
本章目标:
了解数据库的基本概念
了解数据库设计的步骤
掌握绘制数据库E-R图
理解数据库三大范式
什么是数据库系统?
数据库系统(DBS)是一个以数据库为核心的完整的运行实体,
数据库的组成:
系统硬件平台、系统软件平台、数据、数据库管理系统、数据库管理员
数据库管理系统的概念:
数据库管理系统(DBMS)是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。数据库管理系统是数据库系统的核心。
数据库管理系统的具体功能有:
数据定义,数据操纵,数据库运行管理,数据组织、存储与管理,数据的建立与维护
什么是数据库管理员?
数据库管理员(DBA)
数据库管理员的任务包括:安装、配置、升级和迁移数据库,备份与恢复数据库,数据库安全管理,存储和容量规划,性能监控和调整,疑难解答
数据模型:
数据模型应满足三方面的要求:
1、能比较真实地模拟现实世界
2、容易为人所理解
3、便于在计算机上实现
数据模型分为两类--概念模型,逻辑模型和物理模型
概念模型:
也叫信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。
逻辑模型和物理模型:
逻辑模型的主要类型包括网状模型、层次模型、关系模型、面向对象模型等。按计算机系统的观点对数据建模,用于DBMS实现,它是定义数据库如何输入和输出的一种模型,其主要作用是为信息系统提供数据的定义和格式,是数据库系统的核心和基础。
物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。
数据模型转换:
客观对象的抽象过程
1、现实世界中的客观对象抽象为概念模型
2、把概念模型转换为某一DBMS支持的数据模型。
关系数据库的组成:
表:二维表格存储数据
记录:表中的每一行数据
字段:表中的每一列数据
索引:表中单列或多列数据的排序列表,每个索引指向其相关的数据表的某一行。
表间的关系:一个数据库往往都包含多个表,不同类别的数据存放在不同的表中,表间关系把各个表联结起来。
数据库设计的后果
良好的数据库设计:
节省数据的存储空间;能够保证数据的完整性;方便进行数据库应用系统的开发
糟糕的数据库设计:
数据冗余、存储空间浪费;内存空间浪费;数据更新和插入异常
设计数据库的步骤:
收集信息-->标识对象(实体)-->标识每个实体的属性-->标识对象之间的关系-->绘制E-R图-->将E-R图转换为表
收集信息:与该系统有关人员进行交流、座谈,充分理解数据库需要完成的任务
标识对象:标识数据库要管理的关键对象或实体;
E-R(Entity-Relationship)图:主要用于描述系统的数据关系。软件开发人员通常使用实体关联图建立概念性的数据模型
E-R图转换为表:
将各实体转换为对应的表,将各属性转换为各表对应的列
标识每个表的主键列
在表之间建立主外键,体现实体之间的映射关系
数据规范化:
仅仅有好的RDBMS并不足以避免数据冗余,必须在数据库的设计中创建好的表结构。
三大范式:
第一范式:目标是确保每列的原子性
第二范式:除了主外键以外的其他列,都依赖于该主键;要求每个表只描述一件事情
第三范式:除了主外键以外的其他列都不传递依赖于主键列