《数据库原理》
实 验 报 告
学号:08133310 姓名:高梦蝶
班级:计算机科学与技术13-4班
指导教师:闫秋艳
实验一 一、 实验内容及要求
1.使用SQL语句建立学生管理系统相关的表,同时完善各表的相关完整性约束。
学院(学院代码,学院名称)
学生(学号,姓名,性别,学院代码) 教师(教师号,教师姓名,学院代码) 课程(课程号,课程名,学时) 学习(学号,课程号,成绩) 开课(教师号,课程号)
2.对各表进行增加、删除、修改属性操作 3.建立索引 4.删除表操作
5.利用ACCESS完善表的数据内容 二、实验目的
熟练掌握SQL的各种数据定义功能,包括 1.定义表的功能,包括主码和外码的定义
2.修改表的定义功能,包括增加属性,删除属性,修改属性类型
3.建立和删除索引操作,理解索引的作用 4.删除表功能
三、实验步骤及运行结果
1. 使用SQL语句建立学生管理系统相关的表
1.学院表
CREATE TABLE 学院
(学院代码 CHAR(8), PRIMARY KEY, 学院名称 CHAR(8)); 2.学生表
CREATE TABLE 学生 (学号 CHAR(8), PRIMARY KEY, 姓名 CHAR(8), 性别 CHAR(2), 学院代码 CHAR(8),
FOREIGN KEY (学院代码) REFERENCES 学院(学院代码)); 3.教师表
CREATE TABLE 教师
(教师号 CHAR(8), PRIMARY KEY, 教师姓名 CHAR(4), 学院代码 CHAR(8),
FOREIGN KEY (学院代码) REFERENCES 学院(学院代码)); 4.课程表 CREATE TABLE 课程
(课程号 CHAR(8), PRIMARY KEY, 课程名 CHAR(15),
学时 SMALLINT); 5.学习表 CREATE TABLE 学习 (学号 CHAR(8), 课程号 CHAR(8), 成绩 SMALLINT,
PRIMARY KEY(学号,课程号),
FOREIGN KEY(学号)REFERENCES 学生(学号), FOREIGN KEY (课程号)REFERENCES 课程(课程号));
6.开课表 CREATE TABLE 开课
(教师号 CHAR(8), 课程号 CHAR(8),
PRIMARY KEY(教师号,课程号),
FOREIGN KEY(教师号)REFERENCES 教师(教师号), FOREIGN KEY(课程号)REFERENCES 课程(课程号));
3.建立索引
CREATE UNIQUE INDEX STU_IDX_SNO 学生(学号); CREATE UNIQUE INDEX COU_IDX_CNO 课程(课程号);
CREATE UNIQUE INDEX SC_IDX_SNO_CNO ON 学习(学号ASC,课程号DESC);
5.利用ACCESS完善各表的内容
四、实验体会
通过这次试验,我对SQL语句掌握的更加熟练了,能独立在ACCESS中建立,删除各表,并且能对表进行插入修改等基本操作,可以按要求建立索引.我还对表与表之间的关系有了更进一步的了解,认识到主键,外码在表中的意义.另外我对ACCESS的各个界面也更加熟悉,能够自如的运用其中的各个工具.但是,实验的开始,我也遇到了很多问题,经常有拼写错误,中英文的切换还有遗漏符号等问题,通过反复的练习,我终于能够更加准确,迅速的完成各项要求.
实验二 一、使用SQL语句进行各种查询
1、简单查询 2、复杂查询 3、嵌套查询
4、使用SQL和ACCESS结合完成一些复杂的统计 具体查询要求