三、实验内容
(一)创建、修改和删除数据库
1.1创建数据库
1.使用SQL Server Management Studio创建数据库
设有一学籍管理系统,其数据库名为“EDUC”,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始大小为2MB,最大可增长到5MB,按1MB增长。数据库的逻辑文件名为“student_data”,物理文件名为“student_data.mdf”,存放路径为“d:\学号\data”。日志文件的逻辑文件名为“student_log”,物理文件名为“student_log.ldf”,存放路径为“d:\学号\log”。
2.使用Transact-SQL语句创建数据库
使用T-SQL语句创建数据库的语法为:
CREATE DATABASE 数据库名
ON [PRIMARY]
([NAME=逻辑名,] #不加后缀 FILENAME=物理名#路径,绝对路径,[SIZE=常量] #初始 [,MAXSIZE=常量] [,FILEGROWTH=常量])
[,其他数据文件描述]
[,FILEGROUP 文件组名 [该文件组中数据文件描述] ]
[,其他文件组描述]
LOG ON
(事务日志文件描述)
【练习1】创建名为jw的数据库,包括一个主数据文件jw_data.mdf和一个事务日志文件jw_log.ldf。主数据文件的初识大小为5MB,最大容量为5MB,增长值为1MB,存放路径为“d:\学号\data”。事务日志文件的初识大小为2MB,最大容量为5MB,增长率为10%,存放路径为“d:\学号\log”。
1.2修改数据库
在数据库创建成功后,会出于优化性能的考虑,需要对数据库进行修改。
1.添加或删除文件组
默认情况下,数据文件存放于PRIMARY文件组中,日志文件不属于任何一个文件组。另外,用户也可定义多个用户定义的文件组。
使用文件组的优势在于提高系统的性能,表现为三方面:第一,可以平衡多个磁盘上的数据访问负荷;第二,可以使用并行线程来提高数据访问的效率;第三,简化数据库的维护工作,如可以备份或恢复单个文件或文件组,而不必备份或恢复整个数据库,对于海量数据库来说,备份文件或文件组是有效的备份策略。
(1)通过SQL Server Management Studio在jw数据库中增加用户自定义文件组secondary,并向其中增加次要数据文件jw_data2.ndf。
(2)Transact-SQL方式创建文件组。
【练习2】使用Transact-SQL语句在jw数据库中增加用户自定义文件组secondary1,然后使用Transact-SQL语句将其删除。
2.添加或删除数据文件、日志文件
ALTER DATABASE database_name
{
ADD FILE [,…n] [TO FILEGROUP filegroup_name]
#add file(name=,filename=,size=,maxsize=,filegrowth=)
| ADD LOG FILE [,…n] #add file(name=,filename=,size=,maxsize=,filegrowth=)
| REMOVE FILE logical_file_name #文件名
}
【练习3】为数据库jw增加一个数据文件,名为jw_dat2,初识大小为6MB,最大容量为100MB,增长值为6MB。
【练习4】为数据库jw增加一个5MB的日志文件jw_log2,最大容量为10MB,增长值为1MB。
【练习5】删除文件jw_dat2。
3.增加数据库容量
当数据库中的数据量不断增加,导致数据库系统性能下降时,就需要通过增加数据容量来解决该问题。增加数据库容量的方法有以下三种。
(1)在创建数据库时设置数据库为自动增长方式。
(2)在SSMS中修改数据库属性。
(3)通过ALTER语句来增加数据库容量。
ALTER DATABASE 数据库名 MODIFY FILE (NAME=逻辑名,SIZE=常量)
【练习6】使用Transact-SQL语句将jw数据库的主数据文件jw_data.mdf的初识大小设置为7MB。
4.收缩数据库容量
若在创建数据库的过程中,将数据库容量设置得过大,或在数据库中删减了大量的数据,则需要根据实际需要收缩数据库以节约磁盘资源。收缩数据库的方式有以下三种:
(1)设置数据库为自动收缩方式。
(2)通过SSMS收缩数据库。
右键中选择:任务|收缩|数据库
(3)通过DBCC SHRINKDATABASE命令收缩数据库。
【练习7】使用Transact-SQL语句将jw数据库大小收缩至5MB。
DBCC shrinkdatabase(‘jw’,5)
1.3删除数据库
1.通过SSMS删除数据库。
2.通过Transact-SQL语句删除数据库。
使用T-SQL语句删除数据库的语法为:
DROP DATABASE 数据库名
create database jw1
on (name=studen_data,filename='d:\课程\数据库\实验\实验一\2017831201\data\studen_data.mdf',size=5MB,maxsize=5MB,filegrowth=1MB)
log on (name=studen_log,filename='d:\课程\数据库\实验\实验一\2017831201\studen_log.ldf',size=2MB,maxsize=5MB,filegrowth=10%)
--增加删除文件组
alter database jw add filegroup third
alter database jw remove filegroup third
--增加删除文件
alter database jw add file(name=jw_dat2,filename='d:\课程\数据库\实验\实验一\2017831201\data\jw_dat2.mdf',size=6MB,maxsize=100MB,filegrowth=6MB)
alter database jw add log file(name=jw_log2,filename='d:\课程\数据库\实验\实验一\2017831201\data\jw_log2.mdf',size=10MB,maxsize=100MB,filegrowth=1MB)
alter database jw remove file jw_dat2
--增加数据库容量
alter database jw modify file(name='jw_data2.ndf',size=7Mb)
DBCC shrinkdatabase('jw',5)
--删除数据库
drop database jw1
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- awee.cn 版权所有 湘ICP备2023022495号-5
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务