关系数据库与SQL Server(2019版)
上QQ阅读APP看书,第一时间看更新

项目3.3 修改数据库

创建数据库后,可以对它原来的定义进行修改。修改的主要内容包括以下几点。

扩充数据库的数据或事务日志空间。

收缩数据库的数据或事务日志空间。

增加或减少数据文件和事务日志文件。

更改数据库的配置设置。

更改数据库的名称。

可以在SSMS中修改数据库,也可以使用T-SQL语句来修改数据库。

任务3.3.1 使用对象资源管理器修改数据库

例3-6】 修改数据库DB,在数据库DB中增加一个文件组USER2。

其操作步骤如下。

1)在“对象资源管理器”窗口中展开服务器,定位到要修改的数据库DB。

2)右击DB数据库,在弹出的快捷菜单中选择“属性”命令,出现如图3-6所示的窗口。

图3-6 “数据库属性”窗口

3)在该窗口的“常规”选项卡中,可查看该数据库的基本信息。

4)切换到“文件”选项卡,会出现如图3-7所示的窗口。

5)在该窗口中,可修改数据库文件的属性。其中,单击“添加”按钮可以增加数据文件和日志文件,单击“删除”按钮可删除数据文件。

6)切换到“文件组”选项卡,单击“添加文件组”按钮,在新增行的名称框中输入“USER2”,如图3-8所示,单击“确定”按钮即可增加一个次文件组。

7)在图3-8所示的窗口中,还可指定默认文件组、修改现有文件组和删除文件组。

图3-7 “文件”选项卡

图3-8 “文件组”选项卡对话框

在修改数据库时,必须注意以下几点。

1)如果是修改数据库文件属性,不能对文件类型、所属文件组和路径进行修改。

2)主数据文件是不能删除的,日志文件也必须保留一个。

3)如果是新建的文件组,不能设为默认文件组,因为它没有包含任何文件。

4)PRIMARY文件组不能设为只读,也不能进行删除操作。

5)不能对默认文件组进行删除操作,如果要删除,必须先将其他文件组设为默认文件组。

6)不能对非空的文件组进行删除操作,如果要删除,必须先删除文件组内的所有数据文

件,保证该文件组为空。

任务3.3.2 认识ALTER DATABASE语句

在SQL Server中,ALTER DATABASE命令的语法如下。

其中,<数据文件描述符>和<日志文件描述符>为以下属性的组合。

<文件组属性>可取值READ(只读)、READWRITE(读写)和DEFAULT(默认)。

任务3.3.3 修改数据库的名称

例3-7】 将数据库DB1的数据库名称改为“DB5”。

其操作步骤如下。

1)可在SSMS的查询窗口中,输入以下语句。

2)单击工具栏上的按钮(或按〈F5〉键)。

任务3.3.4 增加数据文件、事务日志文件

例3-8】 在数据库DB5中增加一个数据文件和一个事务日志文件。

其操作步骤如下。

1)可在SSMS的查询窗口中,输入以下语句。

2)单击工具栏上的按钮(或按〈F5〉键)。

注意:在增加数据文件时,如果不指定TO FILEGROUP文件组名,那么所增加的文件属于主文件组。

任务3.3.5 增加文件组

例3-9】 在数据库DB5中增加一个名为“FDB5”的文件组。

其操作步骤如下。

1)在SSMS的查询窗口中,输入以下语句。

2)单击工具栏上的按钮(或按〈F5〉键)。

任务3.3.6 修改文件组的名称

例3-10】 将数据库DB5中的FDB5文件组的名称改为“G5”。

其操作步骤如下。

1)在SSMS的查询窗口中,输入以下语句。

2)单击工具栏上的按钮(或按〈F5〉键)。

任务3.3.7 增加数据文件到文件组

例3-11】 在数据库DB5中增加两个数据文件到文件组“G5”中,并将该文件组设为默认文件组。

其操作步骤如下。

1)在SSMS的查询窗口中,输入以下语句。

2)单击工具栏上的按钮(或按〈F5〉键)。

任务3.3.8 修改数据库文件的名称

例3-12】 将数据库DB5中增加的“DB5_3”数据库文件名称改为“DDD”。其操作步骤如下。

1)在SSMS的查询窗口中,输入以下语句。

2)单击工具栏上的按钮(或按〈F5〉键)。

任务3.3.9 删除数据文件和事务日志文件

例3-13】 将数据库DB5的文件组“G5”中的数据文件“DB5_2”删除,并将对应的事务日志文件“DB5_LOG1”删除。

其操作步骤如下。

1)在SSMS的查询窗口中,输入以下语句。

2)单击工具栏上的按钮(或按〈F5〉键)。

任务3.3.10 删除文件组

例3-14】 将数据库DB5中的文件组“G5”删除。

其操作步骤如下。

1)在SSMS的查询窗口中,输入以下语句。

2)单击工具栏上的按钮(或按〈F5〉键)。

注意:在删除文件组时,要先删除文件组中的数据文件,保证该文件组为空,否则,无法删除非空的文件组。