比如现在新建一个数据库,有三个文件组,一个设置为Primary文件组,一个为Default文件组,另一个为User_defined文件组。请问一下具体代码怎样写?

解决方案 »

  1.   

    以下示例创建数据库 Sales,该数据库具有以下文件组:
    包含文件 Spri1_dat 和 Spri2_dat 的主文件组。将这些文件的 FILEGROWTH 增量指定为 15%。
    名为 SalesGroup1 的文件组,其中包含文件 SGrp1Fi1 和 SGrp1Fi2。
    名为 SalesGroup2 的文件组,其中包含文件 SGrp2Fi1 和 SGrp2Fi2。
    USE master;
    GO
    CREATE DATABASE Sales
    ON PRIMARY
    ( NAME = SPri1_dat,
        FILENAME = 'D:\SalesData\SPri1dat.mdf',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 15% ),
    ( NAME = SPri2_dat,
        FILENAME = 'D:\SalesData\SPri2dt.ndf',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 15% ),
    FILEGROUP SalesGroup1
    ( NAME = SGrp1Fi1_dat,
        FILENAME = 'D:\SalesData\SG1Fi1dt.ndf',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 ),
    ( NAME = SGrp1Fi2_dat,
        FILENAME = 'D:\SalesData\SG1Fi2dt.ndf',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 ),
    FILEGROUP SalesGroup2
    ( NAME = SGrp2Fi1_dat,
        FILENAME = 'D:\SalesData\SG2Fi1dt.ndf',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 ),
    ( NAME = SGrp2Fi2_dat,
        FILENAME = 'D:\SalesData\SG2Fi2dt.ndf',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 )
    LOG ON
    ( NAME = Sales_log,
        FILENAME = 'E:\SalesLog\salelog.ldf',
        SIZE = 5MB,
        MAXSIZE = 25MB,
        FILEGROWTH = 5MB ) ;
    GO
      

  2.   

    ALTER DATABASE [testdb1] MODIFY FILEGROUP [User_defined] DEFAULT
      

  3.   

    看看联机文档create database什么问题都可以解决
      

  4.   

    谢谢解答,不过还是没看出是怎样指定某个User_defined文件组为Default文件组的。这段代码的Default文件组应该是PRIMARY吧?
      

  5.   


    CREATE DATABASE [test123] ON  PRIMARY 
    ( NAME = N'test123', FILENAME = N'D:\test123.mdf' 
    , SIZE = 3072KB , FILEGROWTH = 1024KB ), 
     FILEGROUP [FG_DEFAULT] 
    ( NAME = N'F_1'
    , FILENAME = N'D:\F_1.ndf' 
    , SIZE = 3072KB , FILEGROWTH = 1024KB ), 
     FILEGROUP [FG_User_defined] 
    ( NAME = N'U_1'
    , FILENAME = N'D:\U_1.ndf' 
    , SIZE = 3072KB , FILEGROWTH = 1024KB )
     LOG ON 
    ( NAME = N'test123_log'
    , FILENAME = N'D:\test123_log.ldf' 
    , SIZE = 1024KB , FILEGROWTH = 10%)
    GO
    USE [test123]
    GO
    IF NOT EXISTS (SELECT name FROM sys.filegroups WHERE is_default=1 AND name = N'FG_User_defined') 
    ALTER DATABASE [test123] MODIFY FILEGROUP [FG_User_defined] DEFAULT
    GO
      

  6.   

    谢谢你的提示,不过我想要知道的是在CREATE DATABASE时的代码。
      

  7.   


    晕,看不到,就复制到SSMS,查找。
      

  8.   


    我明白了,将默认文件组设置为用户定义的而不是PRIMARY是吧,晕,搞了这么长时间:ALTER DATABASE YourDB 
      MODIFY FILEGROUP User_defined_name DEFAULT;
    GO
      

  9.   

    呵呵,我刚开始学,请问有没有像PRIMARY一样的关键字可以使用呢?我试了DEFAULT就报错。