频道栏目
首页 > 数据库 > SQL Server > 正文
【SQLServer学习笔记】用SQL创建和扩大数据库空间
2017-09-12 10:31:30      个评论    来源:刘知昊的笔记  
收藏   我要投稿

创建只有一个文件组的数据库

name逻辑文件名,filename物理文件名,size初始大小,maxsize最大值,filegrowth增长量。后面这三个量默认单位都是MB。

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块是主文件组,其中的第一个文件是主要数据文件。注意多个数据文件或多个日志文件之间要有逗号分隔。

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)

这里写图片描述
这里写图片描述

扩大数据库空间

如果数据空间不够则不能再插入数据,如果日志空间不够则不能再对数据库修改操作(因为需要写入日志文件)。扩大数据库空间有两种方式:为数据库添加新文件、扩大数据库中已有文件的大小。

①为数据库添加新文件

ALTER DATABASE 数据库名
ADD [LOG] FILE
    (文件参数表)
[TO FILEGROUP 已存在的文件组名或DEFAULT表示默认文件组]

例如:

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了,注意这里的文件名是用来寻找你要扩大的那个文件的,而不是去修改文件名。

alter database MyNewDB
modify file(
    name=newlzh_dat1,
    size=8MB
    )

这里写图片描述

点击复制链接 与好友分享!回本站首页
上一篇:SqlServer2008中存储过程传入表值参数
下一篇:SQL语句使用03------连接
相关文章
图文推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站