数据库实验讲义

更新时间:2023-11-30 03:00:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验一 用SQL Server实现数据库设计 实验目的:

1. 掌握使用企业管理器创建和管理SQL Server数据库及相关数据库对象。 2. 掌握使用SQL语言中的SELECT命令实现查询功能。 上机准备:

1.复习有关关系数据库的基本知识和概念; 2.复习有关SQL语言中SELECT命令的使用; 3.了解有关SQL Server系统的组成;

4.复习有关SQL Server服务器的使用和管理; 5.复习有关企业管理器的基本操作; 6.复习有关查询分析器的基本操作;

7.了解有关SQL Server服务器的登陆账号,密码;

实验内容: 本实验将建立一个学校教学管理数据库,在这个数据库中,存储以下信息:

1.有关学生的信息,包括学生的学号,姓名,班级,性别,出生时间,政治面貌,籍

贯,入学时间,联系电话,简历; 2.有关班级的信息,包括班级的班名,专业,年级,人数,班主任;

3.有关课程的信息,包括课程编号,课程名称,课程类别(是指该课程为必修,指选

还是任选),适用专业,适用年级,开课时间(是指在每个学年的第一学期,还是第二学期),学分,周学时;

4.有关学年课程安排的信息,包括课程编号,开设课程的学年(例如:2002学年),开设课程的班级,任课教师;

5.有关学生选课的信息,包括课程编号,学生的学号,成绩; 一、熟悉开发环境 练习:

1.启动和停止SQL Server服务 2.注册服务器

3.使用企业管理器和查询分析器

二、使用企业管理器完成数据库及数据库对象的创建和管理 实验步骤:

1.创建数据库

(1)要求参数:

数据库名称:teaching 数据库逻辑文件名:teaching_data

日志逻辑文件名:teaching_log

操作系统日志文件名:e:\\xxx\\teaching.ldf 日志文件初始大小:1MB 日志文件最大大小:2MB

操作系统数据文件名:e:\\xxx\\teaching.mdf 数据文件初始大小:1MB 数据文件最大大小:5MB

数据文件增长增量:10% 日志文件增长增量:10% (2)创建后在database节点查看是否已包含了刚创建的数据库teaching; (3)展开teaching 节点,以下的所有对象均创建在teaching 数据库中; 2.创建用户定义的数据类型

(1)练习按要求创建以下数据类型

数据类型名称 数据描述 student_no 长度为10且不允许空值的字符型;

1

member_no 整数,且存储的值不超过30000

shortstring 最多15个字符的可变长字符型

(2)考虑在该数据库中可能使用的自定义数据类型(例如:学号的数据类型),并创建 3.创建表

(1)根据上述数据库存储的信息,决定创建几个表,并给每一个表指定一个有意义的表名;

(2)根据每个表中每列存储的数据的情况,为每个列指定列名,数据类型,数据的长度,是否允许为空等列的属性;

(3)使用企业管理器建立所有的表;

(4)创建之后,还可以根据具体情况,再对表的结构进行修改;(包括添加列,删除列,

修改已存在的列)

4.实现数据完整性

(1)针对每一个表分析并定义主码(Primary Key) (2)定义UIQUE约束

用来规定一个列中的两行不能有相同的值; 例如:希望学生的姓名是唯一的;

(3)针对每一个表分析外部码,并利用“关系图”定义外部码(Foreign Key),建立表

之间的参照关系; (4)定义缺省值

方法1:直接在表设计时,定义列的default属性; 例如:练习在定义“性别”列时,定义它的缺省值位“男”;

方法2:创建一个缺省值对象,然后绑定到任何一个需要的列; 例如:练习创建并绑定一个缺省值到学生的联系电话,缺省值为“unkown”; (5)定义check约束

check约束用来限制用户输入的某一列数据;

例如:成绩输入的值应该限制为0-100之间的数值

(6)定义规则(rule)

rule也可以用来限制用户输入的数据,但它只定义一次,可以绑定到一列或多列; 例如:创建一个规则,保证只允许输入指定的课程类别:“必修”,“任选”,“指选”,然后把此规则绑定到“课程类别”;

(7)创建以上约束后,练习修改约束的操作(包括增加,修改和删除以上约束); 5.根据自己所在班级的情况,对已经创建的表自己输入一些相关示例数据,在输入的过程中,特地输入一些违反上述约束条件的数据,观察处理的效果;

(1)使用企业管理器,完成一些记录的插入、修改和删除; (2)练习使用INSERT、UPDATE、DELETE命令完成记录的插入、修改和删除;如果

对该命令的使用不是很清楚,请练习查找“帮助系统”完成上述命令的学习; (3)练习使用TRUNCATE TABLE命令删除表数据;

(4)在练习使用命令删除数据之前,可以使用SELECT INTO命令把数据保存到一个新建的表中;

三、使用企业管理器创建和管理索引

1.利用表的属性对话框,观察每个表已经自动创建的索引; 2.针对学生选课信息表创建如下索引

(1) 按学号+课程编号建立主键索引,索引组织方式为聚簇索引;

2

(2) 按学号建立索引,考虑是否需要创建唯一索引,索引组织方式为非聚簇索引; (3) 按课程编号建立索引,考虑是否需要创建唯一索引,索引组织方式为非聚簇索引; (4) 再针对学生选课信息表输入一些数据,观察表中记录位置的变化;通过观察比较

非聚簇索引和聚簇索引的不同之处;

3.针对其它表,练习创建索引;(考虑:是否对每个列都应创建索引?应该从哪些方面考虑是否应为此列创建索引?) 4.练习索引的修改和删除操作

四、创建和管理视图

1.创建视图: 使用企业管理器或使用CREATE VIEW命令 例1:创建视图,包含所有通信工程专业的学生的信息;

例2:创建视图,包含所有学生的学号,姓名,选课的课程名和成绩; 例3:创建视图,包含所有课程的课程号,名,班级名称及每班选课的人数; 2.练习修改视图的定义

第一个视图,包括with check option 选项

第二个视图,包括with encryption选项;(查看视图的属性,观察和以前有和不同) 3.利用已经创建的视图进行查询;

4.利用已经创建的视图修改数据(观察是否所有通过视图的修改都能实现?) 5.练习删除视图

五、对于上述所创建的所有数据库对象产生其脚本文件,并保存在磁盘上; 六、使用查询分析器实现以下查询 1.练习课堂上举例介绍的几类查询;

2.实现以下查询 (1) 检索选修了课程号为C1或C2课程,且成绩高于或等于70分的学生的姓名,课程名和成绩。 (2) 检索姓“王”的所有学生的姓名和年龄。 (3) 检索没有考试成绩的学生姓名和课程名。

(4) 检索年龄大于女同学平均年龄的男学生姓名和年龄。 (6) 统计有学生选修的课程门数。

(7) 求选课在四门以上的学生所选课程的平均成绩(不统计不及格的课程)。最后按降序列出

平均成绩名次名单来。

(8) 统计每门指选课程的学生选修人数(超过10人的课程才统计),要求输出课程号,课程名和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列。 (9) 检索所学课程包含了s3所选所有课程的学生姓名。

注:上述查询中所用的课程号和学号的值,可以根据自己表中的数据作修改;为了验证查询

的正确,可能还需要输入或修改表中的示例数据; 七、在企业管理器中利用数据导入,导出向导练习数据的导入导出;把每个表中的数据导出

到指定的文本文件中; 八、在企业管理器中,练习数据库的完整性备份和恢复;

九、把实验中生成的脚本文件,数据导出的文本文件以及数据库的备份文件复制到软盘中; 十、选作:存储过程和触发器的实现

1. 存储过程 (1)使用CREATE PROCEDURE命令创建存储过程

例1:定义存储过程,实现学生学号,姓名,课程名和成绩的查询; 例2:定义存储过程,实现按某人指定课程的成绩;

例3:定义存储过程,在查询某人所选修的课程和成绩,指定姓名时,可以只给出姓;

3

例4:定义存储过程,计算并查看指定学生的总学分

(2)使用EXEC命令执行上述存储过程 2.触发器

(1)使用CREATE TRIGGER命令对学生选课信息表创建插入触发器,实现的功能是:当向学生选课信息表中插入一记录时,检查该记录的学号在学生表中是否存在,检查该记录的课程编号是否在课程表中存在,若有一项为否,则提示“违背数据的一致性”错误信息,并且不允许插入。

(2)使用CREATE TRIGGER 命令对学生信息表创建删除触发器,实现的功能是:当在学生信息表中删除一条记录时,同时删除学生选课信息表中相应的记录。 (2)向课程信息表插入数据,在学生信息表删除记录,验证触发器的执行; 十一、 在实验老师验收所有的项目后,删除所创建的数据库;

4

实验二 在PB中实现第一个应用程序 实验目的:

1.熟悉PB8.0的集成开发环境

2.在PB8.0中连接SQL Server数据库,并使用数据库画笔进行操作; 3.通过一个应用实例,了解PB应用程序的对象以及应用程序开发步骤; 上机准备

1.了解在PB开发环境中操作数据库;(阅读教材:第四章)

2.了解在PB集成环境和开发应用程序的流程;(阅读教材:第二、三章) 实验步骤:

一、进入PB8.0集成环境; 二、在数据库画板中完成以下工作

1. 定义ODBC数据源,它指向实验一中所创建的SQL Server数据库; 2. 建立DB Profile;

3. 在PB环境中连接数据库

4. 在PB环境中操作数据库:浏览数据,更新数据,浏览和修改表结构等 5. 断开数据库的连接

三、建立第一个PB应用程序 1.使用实验一所创建的数据库

2.实现的详细步骤见教材:p127, 第六章 《第一个PB应用程序》;

3.通过该实例理解PB建立一个应用程序的过程和方法;了解画板环境和视窗操作;

4.记录在该应用程序的实现过程中遇到的问题,不清楚的问题,在后面的学习和实验中解决;

5

本文来源:https://www.bwwdw.com/article/vuit.html

Top