第七章 数据库以及数据库对象
内容提要:
- 了解数据库的组成及特点
- 掌握SQL Server2008的安装与配置
- 掌握数据库的创建及维护方法
- 掌握架构的定义与维护方法
- 掌握分区表、索引及视图的创建及维护方法
7.1 创建及维护数据库
一、SQL Server中数据库的分类:
- 系统数据库(自动创建 )
- master : 所有系统级信息,元数据、端点、连接服务器和系统配置
- msdb : 代理服务调度报警和作业、记录操作员时使用保存此类信息
- tempdb : 用于保存临时对象和中间结果,每次启动会重建
- model : 所有数据库的模板,存放用户数据库公共信息
- resource : 只读数据库。在对象资源管理器中看不到
- 用户数据库(保存与用户业务有关的数据)
二、SQL Server数据库的组成
- SQL Server将数据库映射为一组操作系统文件:
- 数据文件:
- .mdf : 主要数据文件。只有一个,大小不得小于3MB
- .ndf : 次要数据文件。有0个或多个,可在一个磁盘或多个磁盘存放
- 日志文件:
- .ldf:事务日志文件。至少有一个日志文件
- 数据文件:
三、数据库存储空间的分配
- 创建用户数据库时,model数据库被自动复制到新建库
- 数据存储的最小单位:数据页(Page,简称页)
- 1页是一块8KB的连续磁盘空间。
- 页的大小决定了数据库表中一行数据的最大大小
- 行不能垮页存储
四、数据库文件组
- 两种类型的文件组:
- 主文件组(PRIMARY):
- 系统定义,包含主要数据文件和任何没有明确分配的其他文件组的其他数据文件,系统表所有页均分配在主文件组中。
- 用户定义文件组:
- 在定义或修改数据库时用FILEGROUP关键字指定。
- 主文件组(PRIMARY):
注意点:
|
五、数据库文件的属性
定义数据库的数据文件和日志文件所需信息:
- 文件名及其位置
- 逻辑文件名,物理文件名
- 初始大小
- 不能小于model数据库主要数据文件的大小
- 增长方式
- 可指定文件是否自增长(默认)
- 最大大小
- 文件增长的最大限制。默认无限制
六、创建数据库
语法格式:
|
说明:
|
案例: |
七、修改数据库
- 扩大数据库空间
- 扩大数据库中已有文件的大小
- 为数据库添加新的文件
语法格式: |
案例: |
- 收缩数据库空间
- 即释放数据库中未使用的空间,文件的收缩从未尾开始。
- 自动收缩:AUTO_SHRINK,默认false.
- 手工收缩:收缩数据库中某个文件大小 ; 按比例收缩整个数据库大小。
|
- 添加和删除数据库文件
|
八、分离和附加数据库
- 分离数据库:
- 作用 : 实现将数据库从一台数据库服务器移到另一台,不需要重建。
- 从实例中删除,不删除数据文件和日志文件,保持了数据文件和日志文件完整一致。
- 使用sp_detach_db系统存储过程实现
- 如: EXEC sp_detach_db 'student','true
- 附加数据库:
- 将分离的数据库重新附加到数据库管理系统中,
- 必须指定主要数据文件的物理存储位置和文件名
CREATE DATABASE ……..
FOR ATTACH|ATTACH REBUILD LOG
例: CREATE DATABASE students On( FILENAME=' F : \DatalStudents_date1.mdf ' FOR ATTACH |
7.2 架构
- 架构(Schema,也称模式),是数据库下的一个逻辑命名空间,是数据库对象的容器,一个数据库包含一个或多个构架,同一个数据库内架构名唯一。
|
7.3 分区表
-
基本概念:
- 分区表是将表中的数据按水平分割成不同子集,并将数据子集存储在数据库一个或多个文件组中。物理上将大表分成几个小表,逻辑上还是一个大表。
- 合理使用分区能提高数据库性能。
- 是否创建分区取决于表当前数据量大小,以及将来数据量,还取决于表中数据的操作特点。
-
创建分区表:
|
7.4 索引
|
7.5 索引视图
-
基本概念
- 标准视图也称虚拟表,返回结果集与基本表一致。标准视图的结果集不永久存放。
- 建立唯一聚集索引的视图,称为索引视图,也称为物化视图。建立索引后,视图的结果集存放在数据库中。
- 对基本表的修改会反映到索引视图存储的数据中。
-
适合建立索引视图的场合:
- 很少更新的基础数据
-
索引视图可以提高这些查询类型性能:
- 处理大量行的连接和聚合
- 许多查询经常执行的连接和聚合操作
-
索引视图通常不会提高这些查询类型性能
- 具有大量写操作的OLTP系统
- 具有大量更新操作的数据库
- 不涉及聚合或连接的查询
- GROUP BY具有高基数度的数据聚合
-
创建聚簇索引前视图必须符合的条件
- 定义索引视图时,视图只能引用基本表,不能是其他视图
- 引用的所以基本表和视图同一数据库,所有者相同
- 必须用SCHEMABINDING选项建视图,
- 视图中表达式引用的所有函数必须确定
- 对视图建立的第一个索引是唯一聚簇索引,之后再创建其他的非聚集索引
|
其余章节进我主页进行查看