SQL Server应用与开发范例宝典
上QQ阅读APP看书,第一时间看更新

第3章 使用管理器管理数据库

3.1 设计数据库

在SQL Server 2000中,数据库由包含数据的表集合和其他对象(如视图、索引等)组成,目的是为执行与数据有关的活动提供支持。本节主要介绍创建、修改和删除SQL Server 2000数据库的过程。

实例071 创建数据库

这是一个可以提高基础技能的实例

实例位置:光盘\mingrisoft\03\071

实例说明

企业规模不同,在开发商务软件时,数据库可根据企业规模和数据流量进行设计,如果后台采用比较大型的SQL Server数据库,那么在使用该数据库前,应首先创建数据库。本实例介绍创建SQL Server数据库的过程。

技术要点

对于使用SQL Server 2000的用户来说,创建数据库是最基本的操作了。在创建数据库之前,必须先确定数据库的名称、所有者(创建数据库的用户)、大小,以及用于存储该数据库的文件和文件组。另外还应该考虑如下事项。

● 创建数据库的权限默认授予sysadmin和dbcreator固定服务器角色的成员,但是它仍可以授予其他用户。

● 创建数据库的用户将成为该数据库的所有者。

● 在一个服务器上,最多可以创建32767个数据。

● 数据库名称必须遵循标识符规则。

可以使用3种文件类型来存储数据库。

● 主文件。主文件包含数据库的启动信息,用于存储数据。每个数据库都包含一个主文件。

● 次要文件。次要文件含有不能置于主要数据文件中的所有数据。如果主文件足够大,能够容纳数据库中的所有数据,则该数据库不需要次要数据文件。有些数据库可能非常大,因此需要多个次要数据文件,或可能在各自的磁盘驱动器上使用次要文件,以便在多个磁盘上存储数据。

● 事务日志。这些文件包含用于恢复数据库的日志信息。每个数据库必须至少有一个事务日志文件。日志文件最小为512KB。

实现过程

(1)依次单击“开始”→“程序”→“Microsoft SQL Server”→“企业管理器”,将出现Microsoft SQL Server企业管理器界面,如图3.1所示。

图3.1 Microsoft SQL Server企业管理器

(2)展开服务器组,然后展开服务器,依次选择“数据库”→“新建数据库”命令,在打开的“数据库属性”对话框的“名称”栏中键入新数据库的名称“YYGLXT”,其属性如图3.2所示。

图3.2 YYGLXT数据库属性

(3)单击“确定”按钮,打开“YYGLXT属性”对话框。用指定的数据库名作为前缀创建主数据库和事务日志文件,如YYGLXT_Data.MDF或YYGLXT_Log.LDF。数据库和事务日志文件的初始大小与model数据库指定的默认大小相同。主文件中包含数据库的系统表,设置如图3.3所示。

图3.3 数据文件的设置

如果要更改新建主数据库文件的默认值,可单击“常规”选项卡。如果要更改新建事务日志文件的默认值,可单击“事务日志”选项卡。如果要更改“文件名”、“位置”、“初始大小(MB)”和“文件组”(不适用于事务日志)等列的默认值,可单击要更改的适当单元格,再键入新值。

设置完成后单击“确定”按钮,YYGLXT数据库就建成了,并且可以在企业管理器中查看到该数据库。

举一反三

根据本实例,读者可以:

使用Transact-SQL的CREATE DATABASE命令创建数据库;

使用数据库向导创建数据库。

实例072 修改数据库

这是一个可以提高基础技能的实例

实例位置:光盘\mingrisoft\03\072

实例说明

用户在创建数据库之后,可以对其原始定义进行更改。本实例介绍更改这些内容的方法。

技术要点

● 扩充分配给数据库的数据或事务日志空间。

SQL Server 2000可根据在创建数据库时所定义的增长参数,自动扩充数据库。通过在现有的数据库文件上分配其他的文件空间,或者在另一个新文件上分配空间,还可以手动扩充数据库。如果现有的文件已经充满,则可以扩充数据或事务日志空间。如果数据库已经用完分配给它的空间而又不能自动增长,则会出现1105错误。

扩充数据库时,必须按至少1MB的步长增加该数据库的大小。扩充数据库的权限默认授予数据库所有者,并自动与数据库所有者身份一起传输。数据库扩充后,数据或事务日志文件使用的新空间,取决于进行扩充的文件。

● 收缩分配给数据库的数据或事务日志空间。

SQL Server 2000允许收缩数据库中的每个文件,这样可以删除未使用的页。数据和事务日志文件都可以收缩。数据库文件可以作为组或单独地进行手工收缩。数据库也可设置为按给定的时间间隔自动收缩。该活动在后台进行,并且不影响数据库内的用户活动。

实现过程

● 扩充分配给数据库的数据或事务日志空间。

(1)在SQL Server 2000企业管理器中,展开服务器组,然后展开要修改的数据库所在的服务器实例。

(2)展开“数据库”文件夹,在需要增加大小的数据库上单击鼠标右键,然后选择“属性”命令。

(3)若要增加数据空间,单击“数据文件”选项卡。若要增加事务日志空间,单击“事务日志”选项卡。

(4)若要添加新文件,单击下一个空行,在“文件名”列中输入将容纳附加空间的文件名。文件位置是自动生成的,数据库文件的后缀为.ndf,事务日志文件的后缀为.ldf。

(5)若要更改“文件名”、“位置”、“分配的空间”和“文件组”等列的默认值,单击要更改的单元格,再输入新值。对于现有的文件,只能更改“分配的空间”值,并且新值必须大于现有的值。

(6)根据需要设置文件属性,包括文件如何增长及文件大小的限制。

● 收缩分配给数据库的数据或事务日志空间。

(1)在SQL Server 2000企业管理器中,展开服务器组,然后展开要修改的数据库所在的服务器。

(2)展开“数据库”文件夹,在需要收缩的数据库上单击鼠标右键,指向“所有任务”,然后选择“收缩数据库”命令,打开“收缩数据库”对话框,如图3.4所示。

图3.4 收缩数据库

(3)用户可以在“收缩后文件中的最大可用空间”选项后输入收缩后数据库中剩余的可用空间量。以“数据库大小,可用空间”值作为依据。

(4)选择“在收缩前将页移到文件起始位置”,可以使释放的文件空间保留在数据库文件中,并使包含数据的页移到数据库文件的起始位置。

(5)单击“调度”栏下的“更改”按钮,即可创建或更改自动收缩数据库的频率和时间。

(6)如果要收缩个别的数据库文件,请单击“收缩文件”栏中“文件”按钮,进行选择。

举一反三

根据本实例,读者可以:

使用T-SQL语句增加数据库的大小;

使用T-SQL语句收缩数据库。

实例073 删除数据库

这是一个可以提高基础技能的实例

实例位置:光盘\mingrisoft\03\073

实例说明

当不再需要数据库时,为了节省空间,可以将数据库删除。本实例介绍删除企业管理器中一些SQL Server数据库的过程。

技术要点

数据库删除之后,文件及其数据都从服务器上的磁盘中删除。一旦删除数据库,它将被永久删除,并且不能进行检索,除非使用以前的备份。建议用户在数据库删除之后备份master数据库,因为删除数据库将更新master中的系统表。

实现过程

下面介绍通过企业管理器删除数据库的步骤。

(1)依次单击“开始”→“程序”→“Microsoft SQL Server”→“企业管理器”,将出现Microsoft SQL Server企业管理器界面。

(2)展开服务器组,然后展开服务器。

(3)展开“数据库”文件夹,单击要删除的数据库,然后单击鼠标右键,在弹出的菜单中选择“删除”命令,如图3.5所示。

图3.5 删除数据库

(4)在出现的删除数据库的对话框中选择要删除的数据库,确认后即可将其删除。

举一反三

根据本实例,读者可以:

分离后删除数据库;

使用DROP DATABASE命令删除数据库。