千家信息网

SQL展扩数据库(命令执行)

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,name逻辑文件名,filename物理文件名,size初始大小,maxsize最大值,filegrowth增长量。后面这三个量默认单位都是MB。?12345678910111213 create d
千家信息网最后更新 2024年09月22日SQL展扩数据库(命令执行)

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
)

0