1.熟练掌握一种DBMS的使用方法,完成数据库的创建、删除和连接;数据表的建立、删除;表结构的修改。
2. 加深对表的实体完整性、参照完整性和用户自定义完整性的理解。
在以下实验中,使用学生-课程数据库,它描述了学生的基本信息、课程的基本信息及学生选修课程的信息。用SQL语句分别完成。
(1)实验方法:
利用SQL server的对象资源管理器和SQL语句对数据库与表进行基本操作,之后进行一些约束控制操作。
(2)实验步骤:
安装SQL server,直接在官网下载即可(本机安装的是 SQLServer2019-SSEI-Eval ),之后再安装SSMS(SQL Server Management Studio)对SQL server进行管理;
接下来利用SQL语句创建三个表,并添加示例元组;
CREATE TABLE S(
Sno VARCHAR(20),
Sname VARCHAR(20),
Ssex VARCHAR(4),
Sage int CHECK (Sage<30),
sdept VARCHAR(50),
PRIMARY KEY(Sno)
);
insert into S(Sno,Sname,Ssex,Sage,sdept)
values
(8209190305,'杨震宇','男',20,'软件工程系'),
(8209190301,'金宸','男',20,'软件工程系'),
(8209190302,'张宏伟','男',18,'软件工程系'),
(8209190304,'刘启明','男',19,'软件工程系');
CREATE TABLE C(
Cno VARCHAR(50),
Cname VARCHAR(50),
Cpno VARCHAR(50),
ccredit INT,
PRIMARY KEY(Cno)
);
insert into C(Cno,Cname,Cpno,ccredit)
values
('1-1','算法设计','数据结构',2),
('2-5','计算机网络原理','汇编语言',3),
('3-3','操作系统','离散数学',3),
('4-2','编译原理','汇编原理',3);
create table SC(
Sno varchar(20),
Cno varchar(50),
grade int,
primary key(Sno,Cno),
foreign key(Sno) references S,
foreign key(Cno) references C
);
insert into SC
values
(8209190305,'2-5',100),
(8209190301,'1-1',94),
(8209190302,'3-3',98),
(8209190304,'4-2',93);
alter table S add birthdate date;
alter table S add height varchar(50);
alter table S drop column height;
7.备份数据库,再还原。
点击“确认”进行备份,结果如下:
备份后,将原来表S,C,SC删除,重新还原:
还原结果如下所示:
通过对象资源管理器和SQL语句对SQL server数据库进行操作,完成对数据库和表的基本操作,最终能够成功创建三张符合题目约束条件的表,并且能够在表成功创建后对其约束条件进行更改。
通过本次实验,主要是学会了如何利用对象资源管理器和SQL语句对SQL server进行简单的数据库和表操作、对表属性的增删以及数据库的备份与还原;
遇到的问题主要有:
① 创建数据库表示不知如何进行文件大小设定,和相关文件设置;
解决方式:通过谷歌搜索可以直接利用图形界面在创建是填写,或者利用SQL语句进行设置。
② 在还原数据库时出现异常;
解决方式:通过查看报错信息可得知是由于还原数据库的进程还未有该数据库的完全操作权,需要将使用该数据库的查询器全部关闭,然后重新备份,即可成功
实验中存在改进的地方主要是对SQL语句以及SSMS使用的生疏,需要在以后多加使用和联系才能够解决。