使用T-SQL命令完成数据库的创建
创建名为论坛数据库BBS,所有文件保存在d:\project下,数据文件名称BBS_data,文件初始大小为10MB,数据文件大小不受限制,日志文件名称为BBS_log, 初始大小为3mb,最大尺寸为20mb。
CREATE DATABASE BBS
ON PRIMARY
(
NAME='BBS_date',
FILENAME='D:\project\BBS_date.mdf',
SIZE=10MB,
MAXSIZE=UNLIMITED
)
LOG ON
(
NAME='BBS_log',
FILENAME='D:\project\BBS_log.ldf',
SIZE=3MB,
MAXSIZE=20MB
)
GO
创建一个网吧计费用的数据库,数据库名称为NetBar,数据文件位置为D:\ project,主数据文件NetBar_data初始大小为5MB。自动增长方式为每次增加5MB,最大数据容量无限制;次数据文件NetBar_data1初始大小为5MB;日志文件NetBar_log初始大小为3MB,自动增长方式为每次增加1MB,最大数据容量为50MB。
CREATE DATABASE NetBar ON PRIMARY ( NAME='NetBar_date', FILENAME='D:\project\NetBar_date.mdf', SIZE=5MB, MAXSIZE=UNLIMITED, FILEGROWTH=5MB ), ( NAME='NetBar_date1', FILENAME='D:\project\NetBar_date1.ndf', SIZE=5MB ) LOG ON ( NAME='NetBar_log', FILENAME='D:\project\NetBar_log.ldf', SIZE=3MB, MAXSIZE=50MB, FILEGROWTH=1MB ) GO
语法格式如下:
CREATE DATABASE database_name
[ ON
[PRIMARY] < filespec > [ ,...n ]
[ , < filegroup > [ ,...n ] ]
[ LOG ON < filespec > [ ,...n ] ]
]
<filespec> ::= (
NAME = logical_file_name ,
FILENAME = { 'os_file_name' | 'filestream_path' }
[ , SIZE = size [ KB | MB | GB | TB ] ]
[ , MAXSIZE = { max_size [ KB | MB | GB | TB ] | UNLIMITED } ]
[ , FILEGROWTH = growth_increment [ KB | MB | GB | TB | % ] ]
)
<filegroup> ::= FILEGROUP filegroup name <filespec> [ ,...n ]
database_name:新创建的数据库的名称,不能与SQL Server中现有的数据库实例名称相冲突,最多可以包含128个字符。
ON:用于显式定义存储数据库数据部分的主数据文件、次要数据文件和文件组。
PRIMARY:指明主文件组中的主数据文件。一个数据库中只能有一个主数据文件,如果缺省PRIMARY关键字,则系统指定语句中的第一个文件为主数据文件。
LOG ON:指明事务日志文件的明确定义。如果不指定,系统会自动创建一个日志文件,其大小为该数据库所有数据文件大小综合的25%或512KB,取两者中的较大者。
NAME = logical_file_name:指定数据文件或日志文件的逻辑文件名。
FILENAME = 'os_file_name':指定数据文件或日志文件的物理文件名,即创建文件时,由操作系统使用的路径和文件名。
SIZE = size:指定数据文件或日志文件的初始大小,默认单位为MB。如果没有为主数据文件提供SIZE,则数据库引擎使用model数据库中的主数据文件的大小;如果为主数据文件提供了SIZE,则该SIZE值应大于或等于model数据库中的主数据文件的大小,否则系统报错。
MAXSIZE = { max_size | UNLIMITED }:指定数据文件或日志文件可以增长到的最大容量,默认单位为MB。如果缺省该项或指定为UNLIMITED,则文件的容量可以不断增加,直到整个磁盘满为止。
FILEGROWTH = growth_increment:指定数据文件或日志文件的增长幅度,默认单位为MB。0值表示不增长,即自动增长被设置为关闭,不允许增加空间。增幅既可以用具体的容量表示,也可以用文件大小的百分比表示。如果没有指定该项,系统默认按文件大小的10%增长。