我想拿SQL语言来把文件放在不同的文件组中,且放在不同的盘符,请各位大虾指教,谢谢

解决方案 »

  1.   


    調用 
    xp_cmdshell 'Dos 命令'
      

  2.   

    SQL是数据库是如何控制文件的呢
      

  3.   


    /**
    创建具有文件组的数据库以下示例创建数据库 Sales,该数据库具有以下文件组: 包含文件 Spri1_dat 和 Spri2_dat 的主文件组。将这些文件的 FILEGROWTH 增量指定为 15%。
    名为 SalesGroup1 的文件组,其中包含文件 SGrp1Fi1 和 SGrp1Fi2。
    名为 SalesGroup2 的文件组,其中包含文件 SGrp2Fi1 和 SGrp2Fi2。**/
    USE master;
    GO
    IF DB_ID (N'Sales') IS NOT NULL
    DROP DATABASE Sales;
    GO
    -- Get the SQL Server data path
    DECLARE @data_path nvarchar(256);
    SET @data_path = (SELECT SUBSTRING(physical_name, 1, CHARINDEX(N'master.mdf', LOWER(physical_name)) - 1)
                      FROM master.sys.master_files
                      WHERE database_id = 1 AND file_id = 1);-- execute the CREATE DATABASE statement 
    EXECUTE ('CREATE DATABASE  Sales
    ON PRIMARY
    ( NAME = SPri1_dat,
        FILENAME = '''+ @data_path + 'SPri1dat.mdf'',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 15% ),
    ( NAME = SPri2_dat,
        FILENAME = '''+ @data_path + 'SPri2dt.ndf'',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 15% ),
    FILEGROUP SalesGroup1
    ( NAME = SGrp1Fi1_dat,
        FILENAME = '''+ @data_path + 'SG1Fi1dt.ndf'',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 ),
    ( NAME = SGrp1Fi2_dat,
        FILENAME = '''+ @data_path + 'SG1Fi2dt.ndf'',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 ),
    FILEGROUP SalesGroup2
    ( NAME = SGrp2Fi1_dat,
        FILENAME = '''+ @data_path + 'SG2Fi1dt.ndf'',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 ),
    ( NAME = SGrp2Fi2_dat,
        FILENAME = '''+ @data_path + 'SG2Fi2dt.ndf'',
        SIZE = 10,
        MAXSIZE = 50,
        FILEGROWTH = 5 )
    LOG ON
    ( NAME = Sales_log,
        FILENAME = '''+ @data_path + 'salelog.ldf'',
        SIZE = 5MB,
        MAXSIZE = 25MB,
        FILEGROWTH = 5MB )'
    );
    GO