SQL Server 2000应用基础与实训教程(李国彬) 第2章 数据库的设计与管理

上传人:E**** 文档编号:89349186 上传时间:2019-05-23 格式:PPT 页数:173 大小:847.50KB
返回 下载 相关 举报
SQL Server 2000应用基础与实训教程(李国彬) 第2章 数据库的设计与管理_第1页
第1页 / 共173页
SQL Server 2000应用基础与实训教程(李国彬) 第2章 数据库的设计与管理_第2页
第2页 / 共173页
SQL Server 2000应用基础与实训教程(李国彬) 第2章 数据库的设计与管理_第3页
第3页 / 共173页
SQL Server 2000应用基础与实训教程(李国彬) 第2章 数据库的设计与管理_第4页
第4页 / 共173页
SQL Server 2000应用基础与实训教程(李国彬) 第2章 数据库的设计与管理_第5页
第5页 / 共173页
点击查看更多>>
资源描述

《SQL Server 2000应用基础与实训教程(李国彬) 第2章 数据库的设计与管理》由会员分享,可在线阅读,更多相关《SQL Server 2000应用基础与实训教程(李国彬) 第2章 数据库的设计与管理(173页珍藏版)》请在金锄头文库上搜索。

1、第2章 数据库的设计与管理,2.1 系统数据库介绍 2.2 创建数据库 2.3 设置数据库选项 2.4 修改数据库结构与删除数据库 2.5 备份和还原数据库 2.6 分离和附加数据库 习题,2.1 系统数据库介绍,2.1.1 master数据库 master数据库记录 SQL Server系统的所有系统级别信息,包括所有的登录帐户、系统配置设置、所有其他的数据库信息和SQL Server 的初始化信息等。 master数据库非常重要,应随时保留一个可用的最新master数据库备份。 在master数据库中,系统信息都记录在以“sys”开头的系统表中。常见系统表的信息如表2-1所示。,表2-1

2、master数据库中常用的系统表,2.1.2 model数据库 model数据库用作在系统上创建的所有数据库的模板。当发出CREATE DATABASE语句时,新数据库的第一部分通过复制model数据库中的内容创建,剩余部分由空页填充。由于SQL Server 每次启动时都要创建tempdb数据库,因此model数据库必须一直存在于SQL Server系统中。 如果SQL Server专门用作一类应用,而这类应用都需要某个表,甚至在这个表中都要包括同样的数据,那么就可以在model数据库中创建这样的表,并向表中添加那些公共的数据,以后每一个新创建的数据库中都会自动包含这个表和这些数据。当然,也

3、可以向model数据库中增加其他数据库对象,这些对象都能被以后创建的数据库所继承。,刚刚完成SQL Server安装时,由于model数据库就已经有了一些系统表、视图和存储过程,因此用户创建的每个数据库中都将有这些对象。这些系统表的表名也以“sys”开头,其内容是有关数据库的结构等重要信息。 2.1.3 msdb 数据库 msdb数据库供SQL Server代理程序调度警报和作业,以及在记录操作员时使用。如果要让警报、备份、复制等各项操作能够自动、定期地执行,就要启动SQL Server Agent服务。如果未使用调度操作,则不会使用msdb。,2.1.4 tempdb 数据库 tempdb数

4、据库保存所有的临时表和临时存储过程。它还满足任何其他的临时存储要求,例如存储SQL Server 生成的工作表。tempdb 数据库是全局资源,所有连接到系统的用户的临时表和存储过程都存储在该数据库中。由于tempdb数据库在SQL Server每次启动时都重新创建,因此该数据库在系统启动时总是干净的。由于临时表和临时存储过程在连接断开时自动除去,而且当系统关闭后将没有任何连接处于活动状态,因此tempdb数据库中没有任何内容会从SQL Server的一个会话保存到另一个会话。,默认情况下,SQL Server在运行时tempdb数据库会根据需要自动增长。不过,与其他数据库不同,每次启动数据库

5、引擎时它会重置为其初始大小。如果为tempdb数据库定义的空间较小,则每次重新启动SQL Server时系统将tempdb数据库的空间自动增加到支持工作负荷所需的大小,这一工作可能会成为系统处理负荷的一部分。为避免这种开销,可以使用ALTER DATABASE增加tempdb 数据库的大小。,2.1.5 系统数据库的文件 每个系统数据库都包含主要数据文件和日志文件,扩展名分别为.mdf和.ldf。例如master数据库的两个文件分别为master.mdf和master.ldf。系统数据库文件会默认在“Program FilesMicrosoft SQL ServerMSSQLdata”磁盘目录

6、中创建。它们的文件名及默认大小如表2-2所示(采用默认典型安装)。,表2-2 系统数据库的文件大小,2.2 创建数据库,1数据库的逻辑结构 数据库的逻辑结构指的是数据库是由哪些性质的信息所组成的。SQL Server的数据库不仅是数据的存放之处,而且所有与数据处理操作相关的信息都存储在数据库中。SQL Server的数据库由各种不同的对象所组成,它们分别用来存储不同信息并支持特定的功能。,SQL Server数据库包含的对象有:表(Table)、视图(View)、约束(Contraint)、规则(Rule)、默认值(Default)、索引(Index)、用户定义数据类型(User-Define

7、d Data Type)、用户定义函数(User-Defined Function)、存储过程(Stored Procedure)和触发器(Trigger)等。 表(Table):是具体组织和存储数据的对象,由列和行组成。行的顺序可以是任意的,列的顺序也可以是任意的。在同一个表里,列的名字必须是惟一的在同一个数据库里,表的名字也必须是惟一的。一般来说,表的名字或列的名字都应该与存储内容有关。,视图(View):是从一个或几个基本表中导出的表。在数据库中只存储有视图的定义,而没有存储对应的数据。视图是查看表中数据的一种逻辑方法。用户可以利用视图做表的安全性措施,可以利用SQL简化查询。 约束(C

8、ontraint):是SQL Server实施数据一致性和完整性的方法。约束对表中各列的取值范围进行限制,以确保表中数据都是合理的、有效的。 默认值(Default):其功能是在向表中插入新的数据时,为没有指定数据的列提供一个默认的数据。默认值也是SQL Server实施数据一致性和完整性的方法。 规则(Rule):规则提供了对特定列或用户定义类型列进行约束的机制。规则也是SQL Server提供的确保数据一致性和完整性的方法。,索引(Index):是提供一种无需扫描整张表就能实现对数据快速访问的途径。使用索引可以优化查询。 存储过程(Stored Procedure):是一组经过编译的可以重

9、复使用的T-SQL代码组合。存储过程在服务器端执行,用户可以调用存储过程,也可以接收存储过程返回的结果。 触发器(Trigger):是一种特殊的存储过程。触发器与表相关联,当用户对指定的表进行某些操作后,触发器将会自动执行。触发器常用来实施数据的完整性。 用户定义数据类型(User-Defined Data Type):是建立在系统数据类型的基础上,并对系统数据类型所做的一种扩展。 用户定义函数(User-Defined Function):是由一条或数条T-SQL语句组成的代码段,用于实现一些常用的功能。编写好的函数可以重复使用。,2数据库的物理结构 数据库的物理结构指的是数据库文件是如何在

10、磁盘上存储的。 1) 文件和文件组 (1) 文件。SQL Server用文件来存放数据库,数据库文件有三类。 主要数据文件(Primary):用来存放数据,每个数据库都必须有一个主数据文件。主要数据文件是所有数据库文件的起点,包含指向其他数据文件的指针。主要数据文件的扩展名是(.mdf)。 其他数据文件(Secondary或二级数据文件):也用来存放数据,数据库中可以没有一个,也可以有多个Secondary文件。其他数据文件的扩展名为.ndf。,事务日志文件(Transaction Log):用来存放日志,每个数据库必须有一个或多个日志文件。日志文件用于存放恢复数据库所用的所有日志信息。事务日

11、志文件扩展名为.ldf. 上述数据库文件的扩展名并非不可改变,但是为了命名的统一,避免引起管理上的混乱,建议不要随便更改默认的扩展名。 一般情况下,一个简单的数据库可以只有一个主数据文件和一个事务日志文件。如果数据库很大,则可以设置多个Secondary文件和日志文件,并将它们放在不同的磁盘上。 默认情况下,数据库文件存放在MSSQLdata目录下,数据文件名为“数据库名_Data.MDF”,日志文件名为“数据库名_Log.LDF”。数据库的创建者可以在创建时指定其他的路径和文件名,也可以添加Secondary文件和更多的日志文件。,(2) 文件组。出于分配和管理上的目的,SQL Server

12、允许将多个文件归纳为同一组,并赋予此组一个名称,这个组就是文件组(File Group)。 文件组允许多个数据库文件组成一个组,并对它们整体进行管理。比如,可以将三个数据库文件(data1.mdf、data2.mdf和data3.mdf)分别创建在三个盘上,这三个文件组成文件组fgroup1。在创建表的时候,就可以指定一个表创建在文件组fgroup1上。这样该表的数据就可以分布在三个盘上,系统在对该表执行查询时可以并行操作,提高了查询效率。,(3) 文件和文件组应遵循的规则。 SQL Server的数据库文件和文件组必须遵循以下规则: 一个文件或文件组只能被一个数据库使用; 一个文件只能属于一

13、个文件组; 日志文件不能属于文件组。 2) 页面(Pages)和盘区(Extents) (1) 页面。SQL Server中所有的信息都存储在页面(Page)上,页面是数据库中使用的最小数据单元,每个页面存储8 K的信息。每个页面都有一个96字节的头来存储系统信息,比如页面类型、页面剩余空间、拥有该页面的数据库逻辑对象的ID等。SQL Server 使用如下类型的页面。,数据页面:用于存储数据库数据,但不包括text、ntext和image类型的数据。 索引页面:用于存储索引数据。 文本/图像页面:用于存储text、ntext和image类型的数据。 全局分配页面:用于存储盘区分配的信息。 页

14、面剩余空间页面:用于存储页面剩余空间的信息。 索引分配页面:用于存储页面被表或索引使用的盘区的信息。,(2) 盘区。盘区(Extent)是由8个连续页面组成的数据结构。它是SQL Server 中为表和索引分配空间的最小单位。也就是说当创建一个表时,SQL Server会自动地以盘区为单位给它分配空间。 为了使存储空间的使用更加高效,SQL Server不会将整个盘区分配给只包含少量数据的表。SQL Server 设计了两种类型的盘区。 单一盘区(Uniform Extents):只被单一的数据库对象使用,所有8个页面都用于这个对象。 混合盘区(Mixed Extents):被最多8个对象共同

15、使用。 一个新建的表或索引首先从混合盘区中分配页面,当表或索引中的数据量增大到8个页面时,再将它转化为单一盘区。,2.2.2 创建数据库 1使用向导创建数据库 使用SQL Server向导可以创建一个最简单的数据库,其步骤如下: (1) 在企业管理器中,选中“控制台根目录”下的要创建数据库的服务器,然后单击“工具”菜单,单击“向导”命令,弹出如图2-2所示的对话框。 (2) 在该对话框中展开“数据库”项,选中“创建数据库向导”后,单击“确定”按钮,打开如图2-3所示的创建数据库向导。 (3) 根据向导提示完成相应操作。,图2-2 “选择向导”对话框,图2-3 创建数据库向导,2使用企业管理器创

16、建数据库 在实际操作中,绝大多数的管理性工作都会利用SQL Server企业管理器来完成。使用SQL Server企业管理器创建数据库的步骤如下: (1) 选中创建数据库的服务器,用鼠标右键单击“数据库”节点,在弹出的快捷菜单中选择“新建数据库”命令,打开如图2-4所示的“数据库属性”对话框。,图2-4 “数据库属性”对话框,(2) 打开新建数据库对话框的“常规”选项卡,在“名称”文本框中输入数据库的名称。数据库的名称必须符合SQL Server命名规则,且不能与其他现存数据库的名称相同。在此,我们输入“学生图书借阅管理”,如图2-5所示。 图2-5 “常规”选项卡,(3) 激活“数据文件”选项卡,如图2-6所示。 图2-6 “数据文件”选项卡,在这个对话框中可以增减数据文件,并对每一个文件设置以下内容。 文件名:也叫逻辑文件名,以后就以这个名字来代表这个数据文件。SQL Server会默认以数据库的名称加上_Data作为主要数据文件的逻辑文件名。比方说,如果在图2-3所示的“名称”文本框中键入“学生图书借阅管理”,则主要数据文件的逻辑文件名将默认是“学

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号