假设一个数据库中包括若干个文件组,filegroup1,filegroup2.....,filegroup1中包括若干个数据文件datafile1,datafile2.....那么
当我们创建表的时候,如何将表数据存储在某一个文件组下特定的数据文件(datafile)中呢?
sql2000创建表的语法中只指定了将表存储到某一文件组中,但我不知道怎么才能存储到某一文件下??

解决方案 »

  1.   

    SE master
    GO--A. 创建数据库 MyDB
    CREATE DATABASE MyDB
    ON PRIMARY                           --主文件组和主要数据文件
      ( NAME='MyDB_Primary',
       FILENAME= 'c:\MyDB_Prm.mdf'),
    FILEGROUP MyDB_FG1                   --用户定义文件组1
      ( NAME = 'MyDB_FG1_Dat1',
       FILENAME = 'c:\MyDB_FG1_1.ndf'),  --次要数据文件1
      ( NAME = 'MyDB_FG1_Dat2',
       FILENAME = 'd:\MyDB_FG1_2.ndf'),  --次要数据文件2
    FILEGROUP MyDB_FG2                   --用户定义文件组2
      ( NAME = 'MyDB_FG1_Dat',
       FILENAME = 'e:\MyDB_FG2.ndf')     --次要数据文件
    LOG ON                               --日志文件
      ( NAME='MyDB_log',
       FILENAME ='d:\MyDB.ldf')
    GO--B. 修改默认数据文件组
    ALTER DATABASE MyDB MODIFY FILEGROUP MyDB_FG1 DEFAULT----定义
    GO--切换到新建的数据库 MyDB
    USE MyDB--C. 在默认文件组MyDB_FG1创建表,并且指定图像数据保存在用户定义文件组MMyDB_FG2
    CREATE TABLE MyTable
      ( cola   int   PRIMARY KEY ,
        colb   char(8) ,
        colc   image )
        TEXTIMAGE_ON MyDB_FG2--在用户定义文件组MyDB_FG2上创建索引
    CREATE INDEX IX_MyTable ON MyTable(cola) ON MyDB_FG2
    GO
      

  2.   

    不懂,似乎sql server的单个数据库就包含两个文件吧,一个保存数据库里面的所有表和纪录,另外一个是日志文件,在创建数据库的时候就应该指定数据库对应的文件的啊。