name逻辑文件名,filename物理文件名,size初始大小,maxsize最大值,filegrowth增长量。后面这三个量默认单位都是MB。 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 create database MyNewDB on (name=Lzh_dat1, filename='E:\Source Program\CreatTest\Lzh_dat1.mdf', size=10MB, maxsize=30MB, filegrowth=5MB) log on (name=lzh_log1, filename='E:\Source Program\CreatTest\lzh_log1.ldf', size=3MB, maxsize=unlimited, filegrowth=3MB) 这里on后就是这个文件组中的各个文件,log on后就是日志文件(日志空间与数据空间是分开管理的)。用这种方式时,因为只有一个文件组,所以其中的第一个文件就被认定为主要数据文件。 注意,主要数据文件.mdf,次要数据文件.ndf,日志文件.ldf都只是推荐的扩展名,可以使用其它扩展名,所以到底是什么文件还是要看在创建语句中的位置。
创建多个文件组的数据库 语法类似,这时候on primary块是主文件组,其中的第一个文件是主要数据文件。注意多个数据文件或多个日志文件之间要有逗号分隔。 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 create database MyNewDB on primary (name=Lzh_dat1, filename='E:\Source Program\CreatTest\Lzh_dat1.mdf', size=10MB, maxsize=30MB, filegrowth=5MB), (name=Lzh_dat2, filename='E:\Source Program\CreatTest\Lzh_dat2.ndf', size=5MB, maxsize=20MB, filegrowth=4MB), filegroup LzhGroup2 (name=Lzh_dat3, filename='E:\Source Program\CreatTest\Lzh_dat3.ndf', size=7MB, maxsize=20MB, filegrowth=3MB), filegroup LzhGroup3 (name=Lzh_dat4, filename='E:\Source Program\CreatTest\Lzh_dat4.ndf', size=10MB, maxsize=30MB, filegrowth=5MB), (name=Lzh_dat5, filename='E:\Source Program\CreatTest\Lzh_dat5.ndf', size=20MB, maxsize=30MB, filegrowth=2MB) log on (name=lzh_log1, filename='E:\Source Program\CreatTest\lzh_log1.ldf', size=3MB, maxsize=unlimited, filegrowth=3MB)
扩大数据库空间 如果数据空间不够则不能再插入数据,如果日志空间不够则不能再对数据库修改操作(因为需要写入日志文件)。扩大数据库空间有两种方式:为数据库添加新文件、扩大数据库中已有文件的大小。 ①为数据库添加新文件 ? 1 2 3 4 ALTER DATABASE 数据库名 ADD [LOG] FILE (文件参数表) [TO FILEGROUP 已存在的文件组名或DEFAULT表示默认文件组] 例如: ? 1 2 3 4 5 6 7 alter database MyNewDB add file( name=newlzh_dat1, filename='E:\Source Program\CreatTest\newlzh_dat1.ndf', size=6mb, filegrowth=0) to filegroup LzhGroup2
②扩大已有文件大小 这时候ADD就要改成MODIFY了,注意这里的文件名是用来寻找你要扩大的那个文件的,而不是去修改文件名。 ? 1 2 3 4 5 alter database MyNewDB modify file( name=newlzh_dat1, size=8MB )