在 SSMS 中使用向导创建数据库
例1:设有一学籍管理系统,其数据库名为“EDUC”,初始大小为 10MB,最大为 50MB,数据库自动增长,增长方式是按 5%比例增长;日志文件初始为 2MB,最大可增长到 5MB,按 1MB 增长。数据库的逻辑文件名为“student_data”, 物理文件名为“student_data.mdf,存放路径为“E:\sql_data”。日志文件的逻辑文件名为“student_log”, 物理文件名为“student_log.ldf”,存放路径为“E:\sql_data”。
(1) 使用向导创建以上描述的数据库。
使用 SQL Server Management Studio(简称 SSMS)创建数据库。
(2) 使用向导删除上面建立的数据库。
用 SSMS 删除添加建立的数据库 EDUC1。
打开 SQL Server Management Studio (SSMS),连接至目标服务器。在对象资源管理器中右键点击数据库,选择新建数据库。
按照题目中的要求,在如图所示的位置分别填写或修改数据库名称、逻辑名称、初始大小、增长方式、最大容量、路径及(物理)文件名,然后点击确定。
输入数据库名称(如 EDUC)。设置数据文件和日志文件的路径、初始大小、自动增长参数。点击确定完成创建。
在 SSMS 中删除数据库
右键点击目标数据库(如 EDCU1),选择删除。勾选关闭现有连接选项,避免因活动连接导致删除失败,点击确定。
先用上述创建数据库EDCU的方式,创建一个数据库EDCU1,然后右键点击EDCU1,点击删除,即可通过向导的方式删除数据库。
使用 SQL 语句创建数据库
使用 T-SQL 语句创建数据库的语法为:
CREATE DATABASE 数据库名
ON [PRIMARY](可选项,可不写)
([NAME=逻辑名,] FILENAME=物理名,[SIZE=常量] [,MAXSIZE=常量] [,FILEGROWTH=常量])(必须有数据文件)
[ ,其他数据文件描述]
[,FILEGROUP 文件组名 [该文件组中数据文件描述] ]
[ ,其他文件组描述]
LOG ON (事务日志文件描述)(必须有,日志文件,共五部分)
例如以下 T-SQL 命令:
CREATE DATABASE TestDB
ON PRIMARY
(
NAME = 'TestDB_Data',
FILENAME = 'C:\Data\TestDB.mdf',
SIZE = 10MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB
)
LOG ON
(
NAME = 'TestDB_Log',
FILENAME = 'C:\Data\TestDB.ldf',
SIZE = 5MB,
MAXSIZE = 50MB,
FILEGROWTH = 1MB
);
写SQL语句,首先需要有一个脚本编辑器,如图所示,点击“新建查询”即可出现脚本编辑器。
先写一个简单的创建数据库的语句:
CREATE DATABASE TestDB;
这里只有一句话,没有像上述语法一样内容复杂,所以全部内容都是默认形式,如图所示,点击“执行”,就创建好了一个数据库EDUC1。
如果继续点击“执行”,则会有如图所示的报错,证明数据库不可重名。
使用 SQL 语句删除数据库
先写一个简单的删除数据库的语句:
DROP DATABASE TestDB;
因为上述创建了默认形式的数据库EDUC1,这里想要删除它,所以输入如图所示命令,点击“执行”,即可删除该数据库。
修改数据库
如果想要修改数据库里的相关内容,可以通过右键、属性的方式修改。
如图所示,在这里可以修改已经创建好的数据库的信息,通过实践发现部分内容(如逻辑名称、文件名等)是无法修改的。
所以并不是所有的内容都可以后续修改,这些信息需要在初始创建的时候就设置好,否则后续无法修改。
还有一种修改方式,右击需要修改的数据库、编写数据库脚本、CREATE到(C)、新查询编辑器窗口,即可出现上述用向导模式构建的数据库的SQL语句。
如图所示,可以在对应的要修改的地方进行修改,然后“执行”即可。
例2:创建学生选课管理数据库 SCC,要求:有 2 个数据文件,其中主数据文件初始大小为 10MB,最大容量为 60MB,按 2MB 增长,文件名为 SCC.mdf;1 个辅助数据文件为 10MB,最大大小不限,按 10%增长,文件名为 SCC.ndf。该数据库有 2 个日志文件,SCC_log.ldf 和 SCC_log1.ldf,大小、最大长度和文件增长幅度均采用系统默认值。所有文件存放路径为“E:\sql_data”。
首先新建查询出现脚本编辑器。
然后对应题目内容输出合适的脚本,点击“执行”即可创建完成。
在ON下(第一个黄色框内),是主数据文件和辅助数据文件的相关信息(为了防止出错,对辅助数据文件的逻辑名称进行了修改);在LOG ON下(第二个黄色框内), 是2 个日志文件,SCC_log.ldf 和 SCC_log1.ldf的相关信息,因为题目中说大小、最大长度和文件增长幅度均采用系统默认值,所以都不用写出来。
每一个文件内容都用括号括起来,在一个ON(或LOG ON)下,括号之间(文件之间)用逗号隔开。
数据库管理示例
修改数据库文件大小:
ALTER DATABASE TestDB
MODIFY FILE
(
NAME = 'TestDB_Data',
SIZE = 20MB
);
收缩数据库文件:
DBCC SHRINKFILE ('TestDB_Data', 15);
设置数据库为只读模式:
ALTER DATABASE TestDB SET READ_ONLY;