创建指定数据文件和事务日志文件的数据库。

1、创建名为 Sales 的数据库

因为没有使用关键字 PRIMARY，第一个文件 (Sales_dat) 成为主文件。因为 Sales_dat 文件的 SIZE 参数没有指定 MB 或 KB，因此默认为 MB，以兆字节为单位进行分配。Sales_log 文件以兆字节为单位进行分配，因为 SIZE 参数中显式声明了 MB 后缀。

USE master

GO

CREATE DATABASE Sales

ON

( NAME = Sales_dat,

FILENAME = 'c:\program files\microsoft sql server\mssql\data\saledat.mdf',

SIZE = 10,

MAXSIZE = 50,

FILEGROWTH = 5 )

LOG ON

( NAME = 'Sales_log',

FILENAME = 'c:\program files\microsoft sql server\mssql\data\salelog.ldf',

SIZE = 5MB,

MAXSIZE = 25MB,

FILEGROWTH = 5MB )

GO

2、不指定文件创建数据库

下面的示例创建名为 mytest 的数据库，并创建相应的主文件和事务日志文件。因为该语句没有 <filespec> 项，所以主数据库文件的大小为 model 数据库主文件的大小。事务日志文件的大小为 model 数据库事务日志文件的大小。因为没有指定 MAXSIZE，文件可以增长到填满所有可用的磁盘空间为止。

CREATE DATABASE mytest

3、附加方式创建数据库

创建一个包含下列物理文件的名为 Archive 的数据库：

c:\program files\microsoft sql server\mssql\data\archdat1.mdf

c:\program files\microsoft sql server\mssql\data\archdat2.ndf

c:\program files\microsoft sql server\mssql\data\archdat3.ndf

c:\program files\microsoft sql server\mssql\data\archlog1.ldf

c:\program files\microsoft sql server\mssql\data\archlog2.ldf

可以使用 sp_detach_db 存储过程分离该数据库，然后使用带有 FOR ATTACH 子句的 CREATE DATABASE 重新附加。

sp_detach_db Archive

GO

CREATE DATABASE Archive

ON PRIMARY (FILENAME = 'c:\program files\microsoft sql server\mssql\data\archdat1.mdf')

FOR ATTACH

GO