创建和更改文件组(转)

来源:互联网 发布:网络爬虫原理 编辑:程序博客网 时间:2024/05/16 17:07

可以在首次创建数据库时创建文件组(参见3.2节),也可以在创建完数据库后添加新数据文件时创建文件组。注意,一旦将文件添加到文件组中,就不能再将这些文件移动到其他文件组中。

一个文件不能是多个文件组的成员。可以指定将表、索引和大型对象(LOB)数据放置到某个文件组中,这意味着这些对象的所有页都将从该文件组的文件中分配。

一个数据库最多可以创建32 767个文件组。文件组中只能包含数据文件,日志文件不能是文件组的一部分。

注意:文件组不能独立于数据库文件创建。文件组是在数据库中组织文件的一种管理机制。

创建和更改文件组可以用图形化方法实现,也可以用Transact-SQL语句实现。

1. 用图形化方法实现

用图形化方法创建文件组的方法在3.2.1节已介绍,现在介绍添加新文件组的方法。

1)在SQL Server Management Studio中,在要添加文件组的数据库上单击鼠标右键,在弹出的快捷菜单中选择“属性”命令,然后在弹出的数据库属性窗口中的“选项页”部分选中“文件组”选项,出现的窗口形式如图3-12所示。

2)若要添加新的文件组,可单击“添加”按钮。单击“添加”按钮后,系统会在列表框最后增加一个新行,用户可在此指定文件组名和文件组属性,如图3-19所示。


3)若不需要某个文件组了,可选中该文件组,然后单击“删除”按钮。删除文件组会将文件组中包含的文件一起删掉。

注意:除非文件组为空,或者文件组中的文件全部为空,否则不要删除文件组。

4)定义好文件组后,单击“确定”按钮关闭此窗口。

之后,在向数据库中添加新数据文件时,就可以选用新文件组了。

2. 用Transact-SQL语句实现

使用CREATE DATABASE语句可以在创建数据库时定义新的文件组,该语句及实现方法已在3.2.2节中介绍。使用ALTER DATABASE语句可以实现定义新的文件组和删除文件组。定义新文件组主要是为添加新数据文件使用的。

定义和删除文件组的ALTER DATABASE语句的语法格式为:
ALTER DATABASE database_name
{
    | ADD FILEGROUP filegroup_name
    | REMOVE FILEGROUP filegroup_name
    | MODIFY FILEGROUP filegroup_name
        { <filegroup_updatability_option>
        | DEFAULT
        | NAME = new_filegroup_name
        }
}
< filegroup_updatability_option>::=
{
    { READ_ONLY | READ_WRITE }
}

各参数含义如下。

ADD FILEGROUP filegroup_name:将文件组添加到数据库。

REMOVE FILEGROUP filegroup_name:从数据库中删除文件组。

MODIFY FILEGROUP filegroup_name { <filegroup_updatability_option> | DEFAULT | NAME = new_filegroup_name}:通过将状态设置为READ_ONLY或READ_WRITE,将文件组设置为数据库的默认文件组或者更改文件组名称来修改文件组。

<filegroup_updatability_option>:对文件组设置“只读”或“读/写”属性。

DEFAULT:将数据库默认文件组更改为filegroup_name。数据库中只能有一个文件组作为默认文件组。

NAME = new_filegroup_name:更改文件组名称为new_filegroup_name。

<filegroup_updatability_option>::=:将文件组设置为“只读”或“读/写”。

其中,

■ READ_ONLY:指定文件组为只读。不允许更新其中的对象。主文件组不能设置为只读。若要更改此状态,用户必须对数据库有独占访问权限。

■ READ_WRITE:指定文件组为可读/写的,即允许更新文件组中的对象。若要更改此状态,用户也必须对数据库有独占访问权限。

【例3-12】为Students数据库定义一个新的文件组,文件组名为NewFileGroup1,同时在该文件组中添加两个新数据文件,逻辑名分别为students_dat1和students_dat2,初始大小分别为4MB和6MB,均存放在D:\Data文件夹中,不自动增长。

(1)创建文件组
ALTER DATABASE Students
    ADD FILEGROUP NewFileGroup1

(2)添加新数据文件
ALTER DATABASE Students
ADD FILE
(
    NAME = students_dat1,
    FILENAME = 'D:\Data\students_dat1.ndf',
    SIZE = 4MB,
    FILEGROWTH = 0
),
(
    NAME = students_dat2,
    FILENAME = 'D:\Data\students_dat2.ndf',
    SIZE = 6MB,
    FILEGROWTH = 0
)
TO FILEGROUP NewFileGroup1

【例3-13】将Students数据库中的NewFileGroup1文件组设置为默认文件组。
ALTER DATABASE Students
    MODIFY FILEGROUP NewFileGroup1 DEFAULT

0 0
原创粉丝点击