数据库系统概论实验报告.doc
《数据库系统概论实验报告.doc》由会员分享,可在线阅读,更多相关《数据库系统概论实验报告.doc(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库系统概论实验报告班级学号_ KT1073-2-39 姓 名_ 王敏_ 指导老师 _ 杨林 _ _目 录实验一 数据库服务器的连接及数据库的建立1实验二 简单SQL查询及数据库多表查询3实验三 视图、索引、存储过程和触发器的使用9实验四 E-R模型与关系模型的转换13注意事项:报告最好双面打印,排版要美观大方,可以手写或交打印稿Email:netdoc实验一 数据库服务器的连接及数据库的建立1.1实验名称:数据库服务器的连接及数据库的建立1.2实验类型:验证型1.3实验学时:3h1.4实验目的:了解连接数据库服务器的身份验证模式,熟悉样例数据库。掌握DBMS中利用界面进行建库建表操作。1.
2、5实验准备:1.5.1 数据模型1.5.2 数据库系统的三级模式结构1.5.3 DBMS的功能1.6实验内容1.6.1熟悉网络环境和数据库环境1.向输入表中的记录:(每个表最少5条记录,其中一条是与自己相关的真实记录) 1.7思考题:1、 从用户角度看,数据库系统都有哪些体系结构?2、 数据库管理系统通常由哪几部分组成?3、 如何用SQL语句完成上述的工作? 1.答:库最终用户角度看,数据库系统的结构分为单用户结构、主从式结构、分布式结构、客户/服务器、浏览器/应用服务器/数据库服务器多层结构。这是数据库外部体系结构。物理存储结构、逻辑存储结构、内存结构和实例进程结构。这是内部体系结构。 2.
3、答:数据库管理系统,又称DBMS,通常由数据定义语言及其翻译处理程序、数据操纵语言及其编译程序、数据库运行控制程序、使用程序四部分构成。 3.答:首先创建数据库SQL语句,创建自己的数据库;然后创建表结Department,Class,Student,Course,Grade;再打开MicrosoftSQLServer2000查询分析器,输入要求的语句,点击运行,命令已成功完成。insertintoclassvalues(,11,信管044,null,null,本科,2004,22)insertintodepartmentvalues(11,计算机及信息工程,计算机,张太红,22)insert
4、intostudentvalues(,王泊,男,1981-03-11,null,null,null)insertintocoursevalues(,fff,3,2,5)insertintograde values(,85)1.8 实验心得(不少于50字) 答:实验一比较简单,主要是让我们掌握DBMS中利用界面进行建库建表操作。做的过程中要注意细节,像是字母大小写,还有数据类型,要保证在后面建立表关系图是不出差错,要仔细检查。在向表中输入记录时,要注意规范字符长度,按表的要求填写,有的要求为空值的可不用填写,以免造成冲突。保证这个实验的准确性会更有利于做后面的实验。在建用户表是容易遇到数据冗余的
5、情况,通过这个实验不仅初步认识了DBMS的功能,还掌握了基础的知识,一举两得。二 简单SQL查询及数据库多表查询2.1实验名称:简单SQL查询及数据库多表查询2.2实验类型:验证型2.3实验学时:3h2.4实验目的:通过本章的学习,用户将能够:1掌握向表中添加数据的方法2掌握如何快速的把一个表中的多行数据插入到另一个表中3掌握更新表中多行数据的方法。4学会如何删除表中的一行数据5学会如何删除表中的所有行6掌握SELECT语句的基本用法7使用WHERE子句进行有条件的查询8掌握使用IN, NOT IN,BETWEEN来缩小查询范围的方法9利用LIKE 子句实现模糊查询 ,利用ORDER子句为结果
6、排序 10学会用SQL SERVER 的统计函数进行统计计算 11掌握用GROUP BY 子句实现分组查询的方法。12掌握多表查询的技术和嵌套查询的方法。2.5实验准备:1、 常用的统计函数: sum() 返回一个数字或计算列的总和 avg() 对一个数字列或计算求列平均值 min() 返回一个数字或一个数字表达式的最小值 max() 返回一个数字或一个数字表达式的最大值 count() 返回满足SELECT语句中指定条件的记录的值 count(*) 返回找到的行数注意:对于以下类型的数据values值不用使用引号1、整型数据类型:bit,int,smallint,tinyint2、货币数据类
7、型:money,smallmoney3、数字数据类型:decimal,numeric4、浮点类型数据:real,float5、简单的日期/时间类型数据:datetime,smalldatetime 对于以下数据类型就要对values值加单引号1、字符数据类型:char,varchar,text2、复杂的日期/时间类型数据:datetime,smalldatetime 2、常用SQL语句语法添加语句:INSERT INTO table_or_view (column_list) data_values删除语句:DELETE FROM table_name WHERE search_conditi
8、on 更新语句:UPDATE table_name SET column_name = expression | DEFAULT | NULL ,.n FROM table_name ,.n WHERE searchcondition查询语句:SELECT select_list FROM table_source WHERE search_condition GROUP BY group_by_expression HAVING search_condition ORDER BY order_expression ASC | DESC 把以下所列每题执行的结果截图,放在该题目下方,大小适中2
9、.6实验内容:2.6.1 操作一:INSERT(插入)1、首先检查表结构:(截图,一个就好) 图2-1 输入检查表结构的语句1、 单条语句插入样例:(截图,向自己的表插入一个记录,前后对比。写出语句) 图2-2 各表插入语句样例2.6.2 操作二:UPDATE(更新)4、执行以下更新在class表中,no_student(学生数)均不正确或为空值,请根据student表中每个班级实有学生人数更新class表中的no_student。注意:请将class表中的abbreviation属性各记录内容补充完整。 2.6.3 操作三:DELETE(删除)请从student表中删除一个student_i
10、d=的记录(注意:确保student表和grade表中有与学生有关的数据):为什么会出现以下的结果? 答:因为student表和grade表是互相关联的,具有参照性,因此发生冲突,所以删除不了。图2-4 删除student表中的一条记录假若删除的是你自己的学号可以吗?为什么? 答:不可以,因为所建的五个用户表都是互相参照的,删除了会影响到它们之间的关系,违背了它们之间的关联性。2.6.4 操作四:SELECT(查询) 图2-5 SELECT语句的基本用2、查询你的各个表中所有的记录数目(其中的一个表) 图2-6 SELECT语句中count()函数的用法3、 查询平均成绩(用avg()函数)
11、图2-7 SELECT语句中avg()函数的用法4、 查询某班级所有同学的平均成绩,查询输出以别名:学号,姓名,平均成绩;并按平均成绩由高到低排序(用到order by) 图2-8 SELECT语句中函数以及复杂子句的用法5、 查询没有成绩记录的学生,查询输出:学号,姓名、的在班级简称。 图2-9 SELECT语句中not in的用法6、 查询某学生的各课成绩(注意确保该学生有课程成绩),结果格式如下:图2-10 用SELECT语句查询自己的成绩7、 查询某班两门及两门以上课程不及格的学生,查询输出:学号,姓名、不及格课程数量(注意保证有满足条件的记录)。图2-11 用SELECT语句查询多门
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 概论 实验 报告
限制150内