数据库及数据库对象
第一节 创建及维护数据库
一、SQL server数据库分类
1)系统数据库(系统自动创建):
master、msdb、tempdb、model、resource
2)用户数据库
保存与用户业务有关的数据。
二、SQL server数据库组成
1)SQL server将数据库映射为一组操作系统文件。
- 数据文件:
①.mdf:主要数据文件,不能小于3M。只有一个;
②.ndf:次要数据文件,0个或多个; - 日志文件:
.ldf:事务日志文件,至少有一个日志文件。
三、数据库存储空间的发分配
1)数据存储的最小单位是数据页(也就是页),一页是一块8KB的连续磁盘空间。
2)页的大小决定了数据库表中一行(一个记录、元组)数据的最大值—不能超过8KB
3)行不能跨页存储,一页可以存放多行数据但是不能超过8KB
四、数据库文件组
1)类型:
- 主文件组(系统定义,主要数据文件和如何没有明确分配的其他文件)
- 用户定义文件组(使用FILEGROUP关键字定义)
注意
- 日志文件不在文件组中,日志空间与数据空间分开管理。
- 一个文件不可以是多个文件组成员。
- 若文件组包含多个文件,则在所有文件被填满后才会自动循环增长。
- 文件加入数据库中后,不能移动到其他文件组。
- 只能指定一个文件组为默认文件组。
2)数据库文件的属性
定义数据库的数据文件和日志文件所需信息:
文件名及其位置
逻辑文件名,物理文件名。
初始大小
不能小于model数据库主要数据文件的大小。
增长方式
可指定文件是否自增长(默认)。
最大大小
文件增长的最大限制。默认无限制。
五、用T-SQL创建数据库
创建数据库一般有两种方式:
- 通过SQL Server Management Studio创建数据库
- 通过T-SQL语句创建数据库
eg:
6、修改数据库
收缩数据库空间 : 即释放数据库中末使用的空间,文件的收缩从末尾开始。 - 自动收缩:AUTO_SHRINK,默认false。
- 手工收缩:收缩数据库中某个文件大小;按比例收缩整个数据库大小。
7.分离和附加数据库
一)分离数据库
1)作用:就是将数据库从一台数据库服务器转移到另一台数据库服务器,不需要重建(类似于剪切)
2)使用的语句:sp_detach_db实现系统存储过程
二)附加数据库
将分离的数据库重新安装到数据库管理系统中,必须指定主要数据文件的物理存储位置和文件名。
2)语句:CREATE DATABASE …(数据库名) ON(存储位置) FOR ATTACH
第二节 架构
一、架构(模式)
1)架构是数据库下的一个逻辑命名空间,是数据库对象的容器,一个数据库包含一个或多个架构,同一个数据库内架构命名唯一
2)定义架构语句:CREATE SCHEMA [<架构名>] AUTHORIZATION [<用户名>]
3)删除架构:DROP SCHEMA [<架构名>]
第三节 分区表
一、基本概念
1)分区表是将表中的数据按水平分割成不同的子集,并将数据子集存储在数据库一个或多个文件组中。
2)物理上将大表分成好几个小表,逻辑上还是一个大表;合理使用分区能提高数据库性能。
第四节 索引
第五节 索引视图
一、基本概念
1)标准视图(也称虚拟表):返回结果集与标准表一致,标准视图的结果集不永久存放。
2)索引视图(也称物化视图):建立唯一聚集索引的视图;视图结果存放在数据库中。