欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据库系统概论实验报告.doc

    • 资源ID:78961724       资源大小:294.50KB        全文页数:22页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库系统概论实验报告.doc

    数据库系统概论实验报告班级学号_ KT1073-2-39 姓 名_ 王敏_ 指导老师 _ 杨林 _ _目 录实验一 数据库服务器的连接及数据库的建立1实验二 简单SQL查询及数据库多表查询3实验三 视图、索引、存储过程和触发器的使用9实验四 E-R模型与关系模型的转换13注意事项:报告最好双面打印,排版要美观大方,可以手写或交打印稿Email:netdoc实验一 数据库服务器的连接及数据库的建立1.1实验名称:数据库服务器的连接及数据库的建立1.2实验类型:验证型1.3实验学时:3h1.4实验目的:了解连接数据库服务器的身份验证模式,熟悉样例数据库。掌握DBMS中利用界面进行建库建表操作。1.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.答:数据库管理系统,又称DBMS,通常由数据定义语言及其翻译处理程序、数据操纵语言及其编译程序、数据库运行控制程序、使用程序四部分构成。 3.答:首先创建数据库SQL语句,创建自己的数据库;然后创建表结Department,Class,Student,Course,Grade;再打开Microsoft SQL Server 2000查询分析器,输入要求的语句,点击运行,命令已成功完成。insert into classvalues('',11,'信管044',null,null,'本科',2004,22)insert into departmentvalues(11,'计算机及信息工程','计算机','','张太红',22)insert into studentvalues('','','王泊','男','1981-03-11',null,null,null)insert into coursevalues('','fff',3,2,5)insert into grade values('','',85)1.8 实验心得(不少于50字) 答:实验一比较简单,主要是让我们掌握DBMS中利用界面进行建库建表操作。做的过程中要注意细节,像是字母大小写,还有数据类型,要保证在后面建立表关系图是不出差错,要仔细检查。在向表中输入记录时,要注意规范字符长度,按表的要求填写,有的要求为空值的可不用填写,以免造成冲突。保证这个实验的准确性会更有利于做后面的实验。在建用户表是容易遇到数据冗余的情况,通过这个实验不仅初步认识了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子句为结果排序 10学会用SQL SERVER 的统计函数进行统计计算 11掌握用GROUP BY 子句实现分组查询的方法。12掌握多表查询的技术和嵌套查询的方法。 2.5实验准备:1、 常用的统计函数: sum() 返回一个数字或计算列的总和 avg() 对一个数字列或计算求列平均值 min() 返回一个数字或一个数字表达式的最小值 max() 返回一个数字或一个数字表达式的最大值 count() 返回满足SELECT语句中指定条件的记录的值 count(*) 返回找到的行数注意:对于以下类型的数据values值不用使用引号1、整型数据类型:bit,int,smallint,tinyint2、货币数据类型: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_condition 更新语句: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.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_id=''的记录(注意:确保student表和grade表中有与学生有关的数据):为什么会出现以下的结果? 答:因为student表和grade表是互相关联的,具有参照性,因此发生冲突,所以删除不了。图2-4 删除student表中的一条记录假若删除的是你自己的学号可以吗?为什么? 答:不可以,因为所建的五个用户表都是互相参照的,删除了会影响到它们之间的关系,违背了它们之间的关联性。2.6.4 操作四:SELECT(查询) 图2-5 SELECT语句的基本用2、查询你的各个表中所有的记录数目(其中的一个表) 图2-6 SELECT语句中count()函数的用法3、 查询平均成绩(用avg()函数) 图2-7 SELECT语句中avg()函数的用法4、 查询某班级所有同学的平均成绩,查询输出以别名:学号,姓名,平均成绩;并按平均成绩由高到低排序(用到order by) 图2-8 SELECT语句中函数以及复杂子句的用法5、 查询没有成绩记录的学生,查询输出:学号,姓名、的在班级简称。 图2-9 SELECT语句中not in的用法6、 查询某学生的各课成绩(注意确保该学生有课程成绩),结果格式如下:图2-10 用SELECT语句查询自己的成绩7、 查询某班两门及两门以上课程不及格的学生,查询输出:学号,姓名、不及格课程数量(注意保证有满足条件的记录)。图2-11 用SELECT语句查询多门课程不及格的学生11、请查询输出:班级编号,班级名称,男生,女生。 图2-15 SELECT语句中CASE语句的用法112、请查询输出:班级编号,班级名称,男生,女生,合计。 图2-16 SELECT语句中CASE语句的用法213、执行以下查询,解释该查询的含义图2-17 解释SELECT语句2.7思考题1.如何使用UNION子句,它必须符合哪两条基本准则?答“union 是两个select语句 的连接符,用于拼接两个查询结果。必须保证:第一、查询语句的结果列数一致,别名或者列名一致。第二、结果列数的结果类型类型一致或者能隐式转换。2.怎样把STUDENT表中前10个数据ADDRESS列的数据更改为'新疆'。答:update KT1073StudentsetAddress=newAddressWhere (Address,(1,10)='新疆') 2.8 实验心得(不少于50字) 答:实验二比第一个实验更加深入了,需要我们掌握向表中添加数据,插入、删除、更新的方法,懂得SELECT的基本语句和用法,语句和用法比较复杂,需要认真耐心得去操作,比较发现各个查询方法的作用,在过程中不仅要掌握操作知识,基础的知识也要通过看书来消化,并巩固。在过程中由于SQL语言不熟悉,写错代码,导致经常运行有错误出现,很恼火,但是动手做过,能力提高了不少。实验三 视图、索引、存储过程和触发器的使用3.1实验名称:视图、索引、存储过程和触发器的使用3.2实验类型:验证型3.3实验学时:3h3.4实验目的:1.掌握视图的概念和使用方法;2.掌握索引的概念和使用方法;2.掌握存储过程的概念和使用方法;3.掌握触发器的概念和使用方法; 3.5实验准备:1.了解视图的概念和作用;2.掌握视图相关的命令;3.了解索引的作用与分类;4.掌握索引的创建方法;5.理解数据完整性的概念及分类;6.了解各种数据完整性的实现方法;7.了解存储过程的使用方法;8.掌握存储过程的调用方法;9.了解触发器的使用方法; 3.6实验内容:3.6.1 视图1.创建视图思考与练习:(截图)1)在STUDENT表中,为计算机科学与技术021建立视图SV1_STU。2)在TUITION表中,为第五学年缴全额学费(3500)的学生建立视图SV2_TUI。  思考与练习: (截图)在STUDENT和CLASS两表中,建立视图SV3_STU_CLA,包含学号,班号,学院号,姓名,性别。  2.查询视图思考与练习: (截图)1)查找SV3_STU_CLA视图中学号为所在的班号和学院号。 2)查找信管992班平均成绩在80分以上的学生的学号和平均分数:思考与练习: (截图)统计信管992班平均成绩在80分以上的学生的个数。 3.更新视图思考与练习: (截图)向SV1_STU视图插入一条记录。 思考与练习: (截图)将V2_STU班中性别为男的值改为女。 (3)删除V2_STU中女同学的记录:思考与练习: (截图)删除SV3_STU_CLA中,班号为的记录。  4.修改视图定义思考与练习: (截图)将SV3_STU_CLA修改成只包含学号,班号,学院号。思考与练习: (截图)删除SV3_STU_CLA视图。 3.6.2索引1. 思考与练习: (截图)为COURSE表中的COURSE_ID建立索引COU_IND。 3.6.3触发器思考与练习: (截图)COURSE表与GRADE表中的COURSE_ID列满足参照完整性规则,用触发器实现两表间的参照完整性。 3.6.4存储过程思考与练习: (截图)编写对TUITION表的插入、修改、删除操作的存储过程,然后调用这些存储过程。  3.7实验心得(不少于50字)答:实验三的内容比较丰富主要让我们了解视图的概念和作用,掌握视图相关的命令,了解索引的作用与分类,理解数据完整性的概念及分类。这些内容都要自己去动手操作,才能掌握,我认为触发器的使用比较难,要通过查资料弄清楚,认真看书,各类概念和思想要注意区别开来,实验过程要反复操作才能达到练习和掌握的目的,在编写SQL语句代码时,尤其注意切换符号,善于发现错误和总结归类,有的语句是可以重复调用的,以后要多翻阅相关资料,自己编写语句。实验四 E-R模型与关系模型的转换 4.1实验名称:E-R模型与关系模型的转换4.2实验类型:设计型4.3实验学时:3h4.4实验目的:本章实验通过给学生一个设计实例,要求学生综合运用本课程所学的数据库分析与设计知识完成一个小型数据库的逻辑模型设计,用E-R模型进行表达、优化,然后将设计出的E-R模型转换为关系模型同时规范,并按要求选择熟悉的DBMS实现数据库的设计,包括创建数据库、数据表、表间关系等,训练学生熟练运用数据库原理知识、数据库逻辑设计知识解决实际问题的综合能力以及设计关系数据库的能力。 4.5实验准备:一、数据库设计数据库设计的一个最基本的问题是如何建立一个好的数据库模式。即给出一组数据,如何构造一个适合于它们的数据模式,使数据库系统无论是在数据存储方面,还是在数据操纵方面都有较好的性能。E-R模型方法讨论了实体与实体之间的数据联系,现在来讨论实体内部属性与属性之间的数据关联,目标是要设计一个“好”的数据库模型。二、概念结构设计在需求基础上,用数据模型表示数据及其联系。设计ER图步骤:1、设计局部E-R图。概念结构设计依据是需求分析阶段的DFD/DD。在DFD中选择适当层次的DFD,作为设计局部E-R图的出发点。中层允许有一定的重叠。(1)确定实体集合第一步(关键一步)数据流 / 数据源 / 目的 / 数据存储 根据具体情况决定,常作为实体集合。(2)联系标明:1:1,1:N,N:M。原则上:与处理框相关的输入流(数据流),输出流(数据目的地),输入或输出的工作之间的可能存在的联系。(3)属性属性名尽量和数据流中数据项名相同。为简化E-R图,属性可仅在DFD中描述。(4)主关键字属性中标明作为PK(primary key)的属性集合. (5)其它建E-R图,要完善DD(DD:包括实体集,联系,属性的描述)某些情况:描述产生频率(每年/月/季),是否长期保存,变化快慢,保密级别,存在的约束。 2、集成局部E-R图在设计局部E-R图的基础上,将局部E-R图集成为全局E-R图。集成时要解决的问题:消除冲突、消除冗余3、合并局部E-R图 合并局部E-R图中相同部分,尽可能的保留特殊部分,删除冗余部分,用累加的方式一次集成两个局部E-R图。4、优化全局E-R图必要时应对全局E-R图进行修改,重构和优化得到最佳的全局E-R图方案。 4.6实验内容:设计一个图书借阅管理数据库要求提供下述服务:可以随时查询书库中现有书籍的品种、数量与存放位置。所有各类书籍均可由书号唯一标识;可以随时查询书籍借还情况。包括借阅人单位、姓名、借书证号、借书日期和还书日期;约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息向有关书籍的出版社增购有关书籍。约定:一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。根据以上情况和假设,试作出如下设计:(1)构造满足需求的E-R图;(2)转换为等价的关系模型结构,并指出每一个关系模式的关键字;(3)考察各关系模式的规范化程度,使其达到3NF。(4)利用SQL Server 2000构建数据库。4.7实验心得(不少于50字)答:第四个实验主要要求我们选择熟悉的DBMS实现数据库的设计,包括创建数据库、数据表、表间关系等,训练我们熟练运用数据库原理知识、数据库逻辑设计知识解决实际问题的综合能力以及设计关系数据库的能力。培养我们的数据库思想,培养我们的动手能力,学会利用资源和资源的开发,在实验一二的基础上,建库和用户表的能力再一次得到巩固,形成整体的思想,在遇到数据冗余和异常时我们能够熟练的解决。但是仅仅靠实验来掌握所有的知识是不可能的,因此不得不多阅读资料,自己动手操作和研究,达到真正掌握的目的。

    注意事项

    本文(数据库系统概论实验报告.doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开