数据库常用对象
(1)表
表是包含数据库中所有数据的数据库对象,由行和列组成,用于组织和存储数据。
(2)字段
在数据库中,大多数表的“列”被称为"字段",字段具有自己的属性,如字段类型、字段大小等,其中字段类型是字段最重要的属性,它决定了字段能够存储哪种数据。
SQL规范支持5种基本字段类型,包括字符型、文本型、数值型、逻辑型和日期时间型。
(3)索引
索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可以快速访问数据库表里的特定信息。
(4)视图
视图(View)是从一个或多个表(或视图)导出的表。视图与表不同,视图是一个虚表,即视图所对应的数据不进行实际存储,数据库中只存储视图的定义,在对对视图的数据进行操作时,系统根据视图的定义去操作与视图相关联的基本表。
(5)存储过程
存储过程(Stored Procedure)是在大型数据库中,一组为了完成特定功能的SQL语句集,存储在数据库中,经过第一次编译后进行调用,不需要再次编译,用户通过指定存储过程的名字并给出参数(如果改存储过程带有参数)来执行它,存储过程时数据库中的一个重要对象。
数据库的组成
SQL Server数据库主要由文件、文件组和日志文件组成,数据库中的所有数据和对象都被存储在文件中。
(1)文件
文件是指数据库中用来存放数据库数据和数据库对象的文件。一个数据库可以有一个或多个数据文件,一个数据文件只能属于一个数据库。当有多个数据库文件时,有一个文件将被定为主要数据文件,其它文件为次要数据文件。
主要数据文件:存放数据和数据库的初始化信息,每个数据库有且只有一个主要数据文件,默认拓展名为.mdf
次要数据文件:存放除主要数据文件以外的所有数据文件。有些数据库可能没有次要数据文件,也可能有多个次要数据文件,默认拓展名为.ndf。
(2)文件组
文件组是数据库文件的一种逻辑管理单位,它将数据库文件分为不同的文件组,方便对文件的分配和管理。文件组主要分为两种类型:一种是主文件组,另一种是用户自定义文件组。
(3)日志文件
SQL Server的日志文件是由一系列日志记录组成,日志文件中记录了存储数据库的更新情况等事物日志信息,用户对数据库进行的插入、删除和更新等操作也都会记录在日志文件中。
当数据库发生损坏时,可以根据日志文件来分析出错的原因;数据丢失时,还可以使用事物日志恢复数据库。每一个数据库至少必须拥有一个事务日志文件,而且允许拥有多个日志文件。
认识系统数据库
(1)master数据库
master数据库是SQL Server 2016中最重要的数据库,是整个数据库服务器的核心。用户不能直接修改该数据库,如果master数据库损坏了,那么整个SQL Server服务器将不能工作。
(2)model数据库
model数据库是SQL Server2016中创建数据库的模板,对model数据库进行的修改,如数据库大小、排序规则、恢复模式和其它数据库选项等,将应用于以后创建的数据库。
(3)msdb数据库
msdb提供运行SQL Server Agent工作的信息。SQL Server Agent是SQL Server中的一个Windows服务,该服务用来运行制定的计划任务。计划任务是在SQL Server中定义的一个程序,该程序不需要干预即可自动开始执行。
(4)tempdb数据库
tempdb是SQL Server中的一个临时数据库,用于存放临时对象或中间结果,SQL Server关闭后,该数据库中的内容被清空,每次重新启动服务器之后,tempdb数据库将被重建。
数据库的存储结构
逻辑存储结构
说明数据库是由哪些性质的信息所组成。SQL Server的数据库不仅仅只是数据库的存储,所有与数据处理操作相关的信息都存储在数据库中。
物理存储结构
说明数据库文件在磁盘中是如何存储的。数据库在磁盘上是以文件为单位存储的,由数据库文件和事物日志文件组成,一个数据库至少应该包含一个数据库文件和一个事务日志文件。
参考书籍:《SQL Server2016数据库应用实战》