实验5

  • 格式:doc
  • 大小:54.50 KB
  • 文档页数:5

实验一熟悉实验环境
实验题目:熟悉实验环境
实验目的:
1.掌握Visual FoxPro基本操作环境。

2.掌握数据表结构的设计。

3.掌握数据表的建立、修改、打开、关闭。

4.掌握索引的概念及建立方法。

5.熟练掌握数据表中记录的定位、显示、删除及修改。

实验要求:
1.本次实验要求每位学生都要建立如下结构的学生表、课程表及选课表(学
生表用表设计器构建,其他用命令构建)。

每个基本表中至少输入10条有意义的记录,然后进行上述数据表的基本操作。

表1-1 学生表结构
表1-3 选课表结构
2.在学生表上建立学号索引和班级普通索引,在课程表上建立课程号索引和
课程名普通索引,在选课表上建立学号、课程号及成绩的普通索引。

并使用相应索引进行浏览。

3.对选课表的成绩字段设置显示标题为“选课成绩”,并设置字段有效性为0-100分(用户自定义完整性约束),输入150查看结果。

4. 使用命令修改课程表的表结构,把学分字段由整型改为数值型(保留1
位小数),并用窗口设置学分默认值为3.0。

实验二SQL简单查询
实验题目:SQL简单查询
实验目的:
熟练掌握SQL简单查询语句的使用。

实验过程:
1. 继续完善实验一的表及记录。

查阅书上例题及课堂习题,深入理解简单
查询语句的写法。

2.使用命令查询所有女生的姓名和出生日期。

3.使用命令查询所有1987年出生的女生的姓名和出生日期。

4.使用命令查询所有以“数据”开头的课程名。

(如数据库、数据结构等)
5.使用命令查询成绩表中所有>80的成绩的不同取值,并按成绩降序排序。

6.使用命令查询所有课程的详细信息。

7.使用命令查询成绩在80-90之间的学生的学号,课程号和成绩,结果按成
绩升序排序。

8.使用命令查询1班和2班的女生的姓名。

9.使用命令查询所有开设的课程数目。

10.使用命令查询成绩表中所有选课记录的最高分、最低分和平均分,要给
表达式分别起上述中文别名。

11.使用命令查询每个学生选修的课程数目,结果按课程数升序排序。

(输出
学号和课程数)
12.使用命令查询每个班学生的平均年龄。

实验三SQL复杂查询语句
实验题目:SQL复杂查询语句
实验目的:
熟练掌握SQL查询语句的使用。

实验过程:
1.用命令在学生表上增加“年龄”字段(数字类型),并用replace命令自
动求出所有学生的年龄。

2.使用嵌套查询查找学生表中年龄小于女生的平均年龄的学生的姓名和年
龄。

3.使用连接查询获取选修了“数据库”这门课程(课程表中必须有这门课
且必须有多名同学选)的学生的学号和成绩。

4.使用命令查询每门课程的间接先修课程(输出课程名,先修课程号),要
求输出所有课程表中的课程,包括没有先修课程的。

(用到外连接)
5.使用连接查询查找“张三”选修的所有课程的课程号,课程名和成绩。

6.使用嵌套查询完成第三题。

7.查询其他班的比2班所有学生年龄都大的学生的姓名和班级。

8.使用exists 嵌套查询完成第三题。

9.查询比1号课程的平均成绩高的学生选修的姓名,学号,课程号和成绩,
查询结果按成绩升序排序
10.自己练习其他题目。

实验四SQL 数据操纵
实验题目:SQL数据操纵
实验目的:
熟练掌握SQL操纵语句的使用。

实验过程:
1.使用命令分别向学生表、课程表和选课表中增加一条记录。

(包括完整值
及空缺列值两种)
2.使用命令逻辑删除所有3班的男生。

3.使用命令逻辑删除所有不及格的成绩记录,利用set delete on 查看结果。

然后再用命令恢复所有加删除标记的记录。

4.修改选课表的所有成绩都增加5分,但增加后的成绩不能高于100分。

5.把1班的学生年龄增加1岁。

6.使用命令修改课程表的表结构,把学分字段宽度由4改为5。

7.练习记录定位命令go,skip,结合disp及recno,eof,bof函数。

8. 使用命令对成绩表按成绩降序排序,并把排序结果存入新表“成绩降序
表”。

Sort to <新表名> on <字段> /a/d
9.打开成绩降序表,浏览所有数据。

10.使用命令对课程表按学分升序排序,并把排序结果存入新表“学分升序表”。

打开,浏览。

11.使用索引来分别浏览学分升序和成绩降序,深入体会索引和排序的差别。

(要先在学分和成绩上建立相关索引)
12.修改成绩表的成绩为唯一索引,并使其起作用,体会普通索引和唯一索引的差别。

(此时成绩表中要求要有同样分数的重复出现)
13.修改学生表班级为唯一索引,查看表中记录的变化。

14.把学生表、课程表和选课表加入某个数据库中,使用表设计器修改学生表某些字段的显示标题,默认值,字段有效性规则等。

实验五视图操作
实验题目:视图操作
实验目的:
1.熟练掌握数据库设计器的各种操作。

2.掌握视图和查询的概念及区别。

实验过程:
1.建立项目“学生管理”,建立数据库“学生成绩管理”,并把上述三个建好的自由表加入该数据库。

2.在学生成绩管理数据库中建立学生表、课程表和选课表三个表之间的关联。

(先要建立相关索引)
3.使用命令创建“学生基本情况视图”,获取所有1985年出生的学生基本情况,并按出生日期升序排序。

4.使用命令创建“学生选课信息视图”,包括学号、姓名、性别、班级、选修课程号、课程名、学分、任课教师、成绩。

并首先按学号升序、其次
按成绩降序排序。

5.使用查询命令查阅上述两个视图中的所有记录,看看结果是否正确。

6.针对1985年出生的“学生基本情况视图”,通过视图修改某位同学的出生年份为1987,并发送更新,查看学生表中相应记录是否已经修改。

(使
用视图设计器)
7.创建视图获取选修了1号课程的学生的姓名、课程名和成绩。

(提示:可以从基表获取,也可以直接从第四题建好的视图中获取-视图上还可建
立视图)
8.使用命令从上述视图中查询选修课程成绩大于80分的学生的姓名、年龄、课程名和成绩,按年龄升序排序。

执行该查询查看结果。

9.自己设计其他查询语句来使用视图。

(可用视图重做实验三的复杂题目,体会视图的好处)
10使用查询设计器重做实验三的复杂题目,体会查询设计器及视图设计器的用法,并查看自动生成的sql语句,体会与自己所写的差别。

11创建查询设计器来获取学生表中的男生和女生的平均年龄,并把结果用柱状图显示。

(修改查询去向到图形)。