数据库的创建及管理
1、SQL—创建
注意
- PRIMARY 是一个关键字,指定主数据库文件,若没有给出这个关键字,则默认文件序列第一个是主数据库文件;
- LOG ON 指明事务日志文件的明确定义;
- NAME=‘数据库逻辑名称’ 是在SQL server中使用的名称,是数据库在SQL server中的标识符;
- FILENAME=‘数据库物理文件名’ 指定数据库 所在文件的 操作系统文件名称和路径,该操作系统文件名与NAME的逻辑名称一一对应;
- SIZE 指定数据库的初始容量大小;
- MAXSIZE 指定操作系统文件可以增长到的最大尺寸;
- FILEGROWTH 指定文件每次增加容量的大小,当指定数据为0是,表示文件不增长。
练习——指定文件组,创建一个多数据文件和日志文件的数据库
CREATE DATABASE practice --数据库名
ON PRIMARY --指定文件1属于主文件组
(NAME=PRA1, --主数据文件的逻辑名称
FILENAME='C:\MYPRACTICE\PRA1.mdf',--物理文件名(存储位置+名称)主数据文件的后缀是.mdf
SIZE=20, --初始分配的空间
MAXSIZE=150, --最大空间
FILEGROWTH=10%), --空间增长,按10%
FILEGROUP MYGROUP
(NAME=PRA2, --第一个次数据文件的逻辑名称
FILENAME='C:\MYPRACTICE\PRA2.ndf', --第一个次数据文件的物理名称(存储位置+逻辑名称)次数据文件的后缀都是.ndf
SIZE=10, --初始分配的空间
MAXSIZE=200, --最大空间
FILEGROWTH=1), --空间增长,按1MB
(NAME=PRA3, --第二个次数据文件的逻辑名称
FILENAME='C:\MYPRACTICE\PRA3.ndf', --物理名称
SIZE=10,
MAXSIZE=100,
FILEGROWTH=1)
LOG ON --事务日志文件的定义
(NAME=PRA_LOG,
FILENAME='C:\MYPRACTICE\PRA_LOG.ldf', --事务日志文件的后缀是.ldf
SIZE=10,
MAXSIZE=50,
FILEGROWTH=1)
注:①创建数据库前需要先创建存放数据库文件和事务日志文件的物理路径
②主数据文件每个数据库只有一个,数据库的起点,文件的扩展名一般为.mdf
③次数据库文件,有的数据库可能没有,有的可能有多个,文件扩展名为.ndf
④事务日志文件至少有一个但可以不只一个,文件扩展名为.ldf
⑤文件组也分为主文件组(primary)和次文件组
⑥日子文件是独立的,不能作为其他数据文件组的成员
2、SQL—修改
ALTER DATABASE 数据库名
{ ADD FILE <…>
|ADD LOG FILE <…>
|REMOVE FILE 数据库逻辑名
|ADD FILEGROUP 文件组名
|MODIFY FILE <…>
|MODIFY NAME=数据库名
|MODIFY FILEGROUP 文件组名{NAME=新文件组名} }
<…>:
( NAME=数据库逻辑名,
NEWNAME=… ,
FILENAME= … ,
SIZE=… ,
MAXSIZE={ max_size|UNLIMITED} ,
FILEFROWTH=…
)
–改哪个用哪个
练习——修改数据库
ALTER DATABASE practice --修改关键字alter
MODIFY FILE( --修改数据文件 modify
NAME='PRA1', -- 待修改的数据文件逻辑名
MAXSIZE=UNLIMITED) --修改最大尺寸为无限制
GO
ALTER DATABASE practice
ADD FILE( --增加一个数据文件
NAME='PRA_ADD', --新增加的文件信息
FILENAME='C:\MYPRACTICE\PRA_ADD.ndf',
SIZE=5,
FILEGROWTH=0 --不允许自动增长
)
GO
ALTER DATABASE practice
REMOVE FILE PRA3 --删除次数据文件PRA3
GO
ALTER DATABASE practice
ADD LOG FILE(
NAME='PRA_LOG_ADD', --增加日志文件
FILENAME='C:\MYPRACTICE\PRA_LOG_ADD.ldf',
SIZE=1,
MAXSIZE=10,
FILEGROWTH=1
)
GO
注:NAME后面的逻辑名称可以不要单引号