购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1 认识数据库

Microsoft SQL Server数据库同Microsoft的其他数据库类似,主要用于存储数据及其相同的对象(如视图、索引、存储过程和触发器等),以便随时对数据库中的数据及其对象进行访问和管理。本节将对数据库的基本概念、数据库对象等知识进行详细的介绍。

3.1.1 数据库基本概念

数据库(database)是按照一定数据结构来组织、存储和管理数据的仓库,是存储在一起的相关数据的集合。其优点主要体现在以下几个方面。

减少数据的冗余度,节省数据的存储空间。

具有较高的数据独立性和易扩充性。

实现数据资源的充分共享。

下面介绍与数据库相关的几个概念。

1.数据库系统

数据库系统是采用数据库技术的计算机系统,是由数据库(数据)、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬件)和软件平台(软件)5部分构成的运行实体。

2.数据库管理系统

数据库管理系统(database management system,DBMS)是数据库系统的一个重要组成部分,是位于用户与底层数据之间的一种数据管理软件,其主要具有如下功能。

数据存取的物理构建:为数据模式的物理存取和构建提供有效的存取方法与手段。

数据操纵功能:为用户使用数据库中的数据提供方便,如查询、插入、修改、删除等以及简单的算术运算和统计。

数据定义功能:用户可以通过数据库管理系统提供的数据定义语言(data definition language,DDL)方便地对数据库中的对象进行定义。

数据库的运行管理:数据库管理系统统一管理数据库的运行和维护,以保障数据的安全性、完整性、并发性和故障的系统恢复性。

数据库的建立和维护功能:数据库管理系统能够完成初始数据的输入和转换、数据库的转储和恢复、数据库的性能监视和分析等任务。

3.关系数据库

关系数据库是支持关系模型的数据库。关系模型由关系数据结构、关系操作集合和完整性约束3部分组成。

关系数据结构:在关系模型中数据结构单一,现实世界的实体以及实体间的联系均用关系来表示,实际上关系模型中的数据结构就是一张二维表。

关系操作集合:关系操作分为关系代数、关系演算以及具有关系代数和关系演算双重特点的语言(SQL)。

完整性约束:包括实体完整性、参照完整性和用户定义的完整性。

3.1.2 数据库常用对象

在SQL Server数据库中,表、字段、索引、视图和存储过程等具体存储数据或对数据进行操作的实体都被称为数据库对象。常用的几种数据库对象如下。

1.表

表是包含数据库中所有数据的数据库对象,由行和列组成,用于组织和存储数据。

2.字段

表中每列称为一个字段,字段具有自己的属性,如字段类型、字段大小等,其中字段类型是字段最重要的属性,它决定了字段能够存储哪种数据。

SQL规范支持5种基本字段类型:字符型、文本型、数值型、逻辑型和日期时间型。

3.索引

索引是一个单独的、物理的数据库结构。它是依赖于表建立的,在数据库中索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需的数据。

4.视图

视图是从一张或多张表中导出的表(也称虚拟表),是用户查看数据表中数据的一种方式。表中包括几个被定义的数据列与数据行,其结构和数据建立在对表的查询基础之上。

5.存储过程

存储过程(stored procedure)是一组为了完成特定功能的SQL语句集合(包含查询、插入、删除和更新等操作),经编译后命名存储在SQL Server服务器端的数据库中,由用户通过指定存储过程名执行。当这个存储过程被调用执行时,这些操作也会同时执行。

3.1.3 数据库组成

SQL Server数据库主要由文件和文件组组成。数据库中的所有数据和对象(如表、存储过程和触发器)都被存储在文件中。

1.文件

文件主要分为以下3种类型。

主要数据文件:存放数据和数据库的初始化信息。每个数据库有且只有一个主要数据文件,默认扩展名是.mdf。

次要数据文件:存放除主要数据文件以外的所有数据文件。有些数据库可能没有次要数据文件,也可能有多个次要数据文件,默认扩展名是.ndf。

事务日志文件:存放用于恢复数据库的所有日志信息。每个数据库至少有一个事务日志文件,也可以有多个事务日志文件,默认扩展名是.ldf。

2.文件组

文件组是SQL Server数据文件的一种逻辑管理单位,它将数据库文件分成不同的文件组,方便对文件的分配和管理。

文件组主要分为以下两种类型。

主文件组:包含主要数据文件和任何没有明确指派给其他文件组的文件。系统表的所有页都分配在主文件组中。

用户定义文件组:主要是在CREATE DATABASE或ALTER DATABASE语句中,使用FILEGROUP关键字指定的文件组。

说明

每个数据库中都有一个文件组作为默认文件组运行,默认文件组包含在创建时没有指定文件组的所有表和索引页。在没有指定的情况下,主文件组作为默认文件组。

对文件进行分组时,一定要遵循如下文件和文件组的设计规则。

文件只能是一个文件组的成员。

文件或文件组不能由一个以上的数据库使用。

数据和事务日志信息不能属于同一个文件或文件组。

日志文件不能作为文件组的一部分。日志空间与数据空间分开管理。

注意

系统管理员在进行备份操作时,可以备份或恢复个别的文件或文件组,而不用备份或恢复整个数据库。

3.1.4 系统数据库

SQL Server数据库在安装时默认创建4个系统数据库(master、tempdb、model和msdb)。下面分别进行介绍。

master数据库:是SQL Server中最重要的数据库,记录SQL Server实例的所有系统级信息,包括实例范围的元数据、端点、链接服务器和系统配置设置。

tempdb数据库:是一个临时数据库,用于保存临时对象或中间结果集。

model数据库:用作SQL Server实例上创建的所有数据库的模板。对model数据库进行的修改(如数据库大小、排序规则、恢复模式和其他数据库选项)将应用于以后创建的所有数据库。

msdb数据库:用于SQL Server代理计划警报和作业。 U89Np6NqmZC8NJXOcUr74K58XzB2X4q/qCrCXyanWwbcPArWjXRlRJQttozHZnAr

点击中间区域
呼出菜单
上一章
目录
下一章
×