文档介绍:第3章数据库的创建与管理
本章学习目标
l 熟悉数据库对象及文件组成
l   了解系统数据库及示例数据库作用
l 熟练创建和管理数据库
数据库组成与文件
数据库文件
在SQL Server 2000中,每个数据库均用一组操作系统文件来存放,数据库中的所有数据、对象和数据库操作都存放在这些操作系统文件中。根据这些文件的作用不同,可以分为三类:
(1)主数据文件(Primary):用来存放数据,每个数据库都必须有一个主数据文件,。
  (2)次数据文件(Secondary):用来存放数据,一个数据库可以没有也可以有多个次数据文件,。
  (3)事务日志文件(Transaction Log):用来存放事务日志,每个数据库必须有一个或多个事务日志文件,。
一般情况下,一个数据库至少由一个主数据文件和一个事务日志文件组成。也可以根据实际需要,给数据库设置多个次数据文件和其他日志文件,并将它们放在不同的磁盘上。
默认状态下,数据库文件存放在\MSSQL\data\目录下,主数据文件名为“”,日志文件名为“”。数据库的创建者可以在创建时指定其他的路径和文件名,也可以添加Secondary文件和更多的日志文件。
数据库组成
SQL Server的每一个数据库都由关系图(Relation Map)、表(Table)、视图(View)、存储过程(Stored procedures)、触发器(Triggers)、用户自定义数据类型(User-defined data types)、用户自定义函数(User-defined functions)、索引(Indexes)、规则(Constraints)、默认值(Defaults)等数据库对象组成,如图3-1所示。
图3-1 数据库的组成
在完成SQL Server安装后,系统即会自动创建6个数据库。它们分别是master、tempdb、model和msdb这4个系统数据库和Northwind、Pubs这2个示例数据库。如图3-1所示。
(1)master数据库
master是一个最重要的系统数据库,它记录了SQL Server系统级的所有信息,包括系统中所有的登录账号、系统配置信息、所有数据库的信息、所有数据库及数据库文件的地址等。每个数据库都有属于自己的一组系统表,记录了每个数据库各自的系统信息,这些表在创建数据库时自动产生。为了与用户创建的表相区别,这些表被称为系统表,表名都以“sys”开头。
master数据库中还有很多系统存储过程和扩展存储过程。系统存储过程是预先编译好的程序,所有的系统存储过程的名字都以“sp_”开头。
(2)tempdb数据库
tempdb 数据库用于存放所有连接到系统的用户临时表和临时存储过程以及SQL Server产生的其他临时性的对象。tempdb是SQL Server中负担最重的数据库,因为几乎所有的查询都可能需要使用它。
在SQL Server 关闭时,tempdb数据库中的所有对象都被删除,每次启动SQL Server时,tempdb数据库里面总是空的。
(3)model数据库
model数据库是一个模板数据库,它包含了用户数据库中应该包含的所有系统表以及其他对象的结构。model数据库的容量为2MB,其中1MB存放数据库,1MB存放事务日志。当创建用户数据库时,系统自动地把model数据库中的内容拷贝到新建的用户数据库中,然后把它扩充到命令所要求的容量。因此,新数据库绝对不能比model数据库小。
(4)msdb数据库
msdb 数据库记录了有关SQL Server Agent代理服务的有关信息,如安排报警、作业,并记录操作员等信息。
(5)示例数据库
SQL Server在安装时还自动创建了两个示例数据库:pubs和northwind,是供读者作为学习工具使用的。Northwind数据库保存着一个虚构的贸易公司的数据信息。Pubs数据库保存着一个虚构的出版公司的数据信息。
创建数据库
在SQL Server 2000中,可以使用三种方法创建数据库。它们是使用企业管理器创建数据库;使用向导创建数据库;使用CREATE DATABASE语句创建数据库
可以采用下列任意一种方法打开数据库属性对话框:
(1)展开服务器,单击【数据库】,选择【操作】菜单中的【新建数据库】命令。
(2)展开服务器,右击【数据库】,在弹出的快捷菜单中选择【新建数据库】命令。