欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    《数据库原理》实验教学指导书.docx

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

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

    《数据库原理》实验教学指导书.docx

    1、数据库原理实验教学指导书目 录第一部分 大纲和计划1.1 实验教学大纲 11.2 实验实施计划表 2第二部分 实验说明2.1 实验一:了解Oracle中的基本知识 32.2 实验二:Oracle中的查询 42.3 实验三:Oracle中的表 52.4 实验四:PL/SQL编程(一) 62.5 实验五:PL/SQL编程(二) 72.6 实验六:PL/SQL编程(三) 82.7 实验七:PL/SQL编程(四) 92.8 实验八:触发器设计 10第三部分 实验补充教材3.1 实验一:了解Oracle中的基本知识 113.2 实验二:Oracle中的表 123.3 实验三:Oracle中的查询 153

    2、.4 实验四:PL/SQL编程(一) 153.5 实验五:PL/SQL编程(二) 183.6 实验六:PL/SQL编程(三) 223.7 实验七:PL/SQL编程(四) 263.8 实验八:触发器设计 31第一部分 大纲和计划1.1数据库原理实验教学大纲一、课程名称:数据库原理(Principle of Database System)二、课程编码:三、课程总学时: 16 学时 理论: 0 学时;实验: 16 学时四、课程总学分: 学分五、适用专业和开课学期:计算机科学与技术专业,第4学期。六、实验的目的与任务:通过ORACLE中用户及表的创建、SQL查询、ORACLE中的表、PL/SQL编程

    3、、触发器设计等实验,使学生掌握数据库技术的基本原理在大型数据库中的应用。七、主要仪器设备及台(套)数:计算机八、主要实验教材(指导书)及参考用书:数据库原理及应用(Oracle)实用教程 刘甫迎、王道学、党晋蓉主编 清华大学出版社2004年10月第1版 九、成绩考核方式及评分标准:教师根据学生通过FTP上交的实验报告确定其完成数量和质量,进一步综合学生的上机态度进行评分。实验成绩占课程总成绩的30%。十、实验开出率:100%十一、实验项目与要求:序号实验项目名称时数项目要求项目类型项目性质每台(套)仪器人数目的要求实验耗材定额(按自然班)1了解ORACLE的基本知识2必修操作验证1掌握用户及表

    4、的创建方法,熟悉ORACLE的运行环境2ORACLE中的查询2必修操作验证1重点掌握复杂查询的实现方法3ORACLE中的表2必修操作验证1大致了解ORACLE中的各种表4PL/SQL编程8必修操作设计1掌握简单的PL/SQL编程的方法5触发器设计2必修操作设计1了解各种触发器的设计方法注:1项目要求:必修、选修、其他;2项目类型:演示、操作、模拟;3项目性质:验证、综合、设计、研究。12 数据库原理实验大纲及其实施计划表课程综述本课程重点讲解数据模型、数据库系统结构、关系数据库、SQL语言、数据库安全性和完整性、关系数据库设计理论、数据库设计、数据库编程、查询优化、并发控制和恢复、数据库管理系

    5、统以及数据库技术新进展等内容。通过本课程的学习,学生不但可以掌握数据库技术的基本原理,而且还能够大型数据库的基本应用方法。实验设置总体说明 本课程设计了八个实验,通过ORACLE中用户及表的创建、SQL查询、ORACLE中的表、PL/SQL编程、触发器设计等实验,学生可以掌握数据库技术的基本原理在大型数据库中的应用。实验名称(选做实验后面加*号)1了解Oracle的基本知识2Oracle中的表3Oracle中的查询4PL/SQL编程(一)5PL/SQL编程(二)6PL/SQL编程(三)7PL/SQL编程(四)8触发器设计9实验占课程总课时、学分比例情况实验占课程总学时的25%学分占课程总学分的

    6、15%实验资料存档形式(纸质/光盘)光盘第二部分 实验说明实验说明21 实验一 了解Oracle的基本知识实验目的:1 熟悉ORACLE的环境,学习使用SQL*Plus与ORACLE进行交互。2 掌握用户的建立、删除、角色的授权以及用户密码的修改。3 掌握连接数据库以及断开连接的方法。4 建立基本的数据库表,学习简单的查询。5学会表结构的修改、显示与删除。6学习提交与回滚的方法。实验环境(硬/软件要求):安装Oracle 9i实验内容:1 为自己建立用户帐号,练习如何修改用户参数。2 以新建的帐号登录数据库,建立教材第75页中的四张表结构并输入相应表内容。实验主要步骤:1 建立用户。2 改变用

    7、户参数。3 建立表结构。4 修改表结构。5 显示表结构。6 记录的输入及修改。7提交。评分标准:实验报告占70%,上机态度占30%实验报告形式(纸质/电子):电子22 实验二 Oracle中的表实验目的:1熟悉Oracle中的各种表。2熟悉并练习临时表的使用方法。3学会修改表属性的方法。4熟练掌握表结构的修改和删除、索引的创建与删除。5熟悉数据词典中的几个视图的查看方法。 实验环境(硬/软件要求):安装Oracle 9i实验内容:1 按补充教材建立临时表,注意?处的返回结果。2 把当前用户的默认表空间改为USERS,并把四张表移到USERS表空间中。3完成以下与表结构相关的操作: (1)复制表

    8、S的结构生成一张新表,取名为SS; (2)在SS表中加入属性TEL(CHAR型); (3)将SS表中的属性STATUS类型改为SMALLINT型。4完成以下与索引相关的操作: (1)在SS表上建立SNAME的唯一索引; (2)在SS表上按CITY升序、SNAME降序建立唯一索引; (3)删除以上索引; (4)删除SS表。5熟悉并使用数据词典中的几个视图,查看自己帐户已创建的所有表的信息。实验主要步骤:1实验前根据实验内容做好书面准备。2上机验证准备好的命令正确与否,修改错误直至正确。评分标准:实验报告占70%,上机态度占30%实验报告形式(纸质/电子):电子23 实验三 Oracle中的查询实

    9、验目的:1熟练掌握各种SQL语句的使用方法。2掌握视图的建立与删除。实验环境(硬/软件要求):安装Oracle 9i实验内容:1 实现第三章作业中的第5题的SQL查询。2 完成以下查询:(1)按所驻城市升序、供应商号降序显示所有的供应商信息。(2)显示各供应商供应的零件种类数,要求按供应种类的多少降序显示,显示的内容包括供应商号,零件种类数(提示:结果中应包括未供应零件的供应商)(3)显示所有供应了“蓝色”零件数量在200以上(含200)的所有供应商信息,显示内容包括供应商号、供应商名字、所驻城市和供应数量。(4)找出供应零件总量超过1000(含1000)的所有供应商号,要求按供应总量多少降序

    10、排列。(5)找出零件供应总数量最多的供应商号。3 实现第三章作业第11题中的视图建立及查询,最后删除新建的视图。实验主要步骤:1实验前根据实验内容做好书面准备。2上机验证准备好的命令正确与否,修改错误直至正确。评分标准:实验报告占70%,上机态度占30%实验报告形式(纸质/电子):电子24 实验四 PL/SQL编程(一)实验目的:1熟悉脚本的编写及执行。2了解编程的结构以及变量的声明方法以及记录类型的使用。实验环境(硬/软件要求):安装Oracle 9i实验内容:1熟悉脚本的使用方式。2调试例、3,了解PL/SQL的编程风格、变量的声明方法以及记录类型的使用方法。3查询输出S1供应商的Snam

    11、e及City。实验主要步骤:1输入程序。2运行程序并分析结果。3修改程序,再运行程序,分析结果。评分标准:实验报告占70%,上机态度占30%实验报告形式(纸质/电子):电子25 实验五 PL/SQL编程(二)实验目的:1掌握索引表的定义及引用。2掌握索引表中的记录引用方法。3掌握游标的使用方法。实验环境(硬/软件要求):安装Oracle 9i实验内容:1调试例3,记录显示结果。2模仿例5,分别显示供应商S2以及S5的供货情况(包括PNO、JNO、QTY)。3模仿例6,显示表S中每一个供应商的号码及名称。实验主要步骤:1编程序并上机调试运行。2修改程序再运行,检查结果是否正确。评分标准:实验报告

    12、占70%,上机态度占30%实验报告形式(纸质/电子):电子26 实验六 PL/SQL编程(三)实验目的:1掌握游标属性的使用。2掌握各种程序控制结构的运用。实验环境(硬/软件要求):安装Oracle 9i实验内容:1模仿例1,把其中的EMP表改成P表运行一遍,记录显示结果。2编程显示J表的前三条记录。3编程统计每一个供应商的供应零件总量,要求显示每一个供应商的名称以及供应总量。实验主要步骤:1实验前按实验内容编制程序。2调试程序,上机运行。评分标准:实验报告占70%,上机态度占30%实验报告形式(纸质/电子):电子27 实验七 PL/SQL编程(四)实验目的:1掌握运用过程、函数的方法。2掌握

    13、程序包的编程方法。实验环境(硬/软件要求):安装Oracle 9i实验内容:1针对SPJ表编一程序包,要求包含以下三个过程实现以下功能:(1)插入一条新记录(传入各字段参数)(2)删除一条记录(传入SNO、PNO、JNO)(3)输出某供应商所提供的所有的零件号、工程号及数量(传入SNO)实验主要步骤:1实验前书面编制程序包。2调试程序,上机运行直至程序包无语法错误。3调用程序包中的过程,验证其正确性并记录结果。评分标准:实验报告占70%,上机态度占30%实验报告形式(纸质/电子):电子28 实验八 触发器设计实验目的: 1掌握ORACLE中各种触发器的设计方法。实验环境(硬/软件要求):安装O

    14、racle 9i实验内容:1实现教材P162中例18 的BEFORE行级触发器的定义,并检测触发器是否执行。2模仿教材P162例19,定义AFTER行级触发器,当供应情况表SPJ的供应数量Qty发生变化后就自动在数量变化表Qty_log中增加一条相应记录。3在S表上创建一个触发器,要求插入的记录中SNO的内容均为大写字符。实验主要步骤:1按照实验内容设计触发器。2调试程序,上机运行并加以验证。评分标准:实验报告占70%,上机态度占30%实验报告形式(纸质/电子):电子第三部分 实验补充教材3.1 实验一 Oracle中的基本知识一 大型数据库与单用户数据库的区别1 安全性(1) 用户权限管理(

    15、2) C/S模式,服务器统一处理客户端的请求(3) 没有DBF文件,一个表可以分跨在多个物理文件上,数据存放格式不公开2 并发性:用进程或线程同时处理多个用户的请求,自动进行并发控制,封锁的粒度可以到行3 分布式处理:多台服务器同时对外服务,提高处理速度及并发度4 大容量5 数据词典:定义了表的逻辑模式和物理模式,用户可以在这里找到了解数据库内容所需的所有对象二 SQL*PlusSQL*Plus是一个开发者和管理员用来与Oracle数据库进行交互的客户工具。它可以让用户发布SQL语句,编译和执行PL/SQL代码,从与Oracle相连接的命令行控制台上管理本地服务器或者网络上任何位置的服务器上的

    16、数据库。三 建立用户1 如何建立用户?SQLconnect wzp/wzpmyoracle;SQLcreate user jxxxidentified by jxxx;SQLgrant connect,resource to jxxx;2 如何改变用户参数?(1) 修改密码SQLconnect jxxx/jxxxmyoracle;SQLalter user jxxx identified by jyyy;(2) 锁定帐号以及解除帐号锁定SQLconnect wzp/wzpmyoracle;SQLalter user jxxx account lock; (锁定帐号)SQL alter user

    17、 jxxx account unlock; (解除帐号锁定)(3) 如何删除用户SQLconnect wzp/wzpmyoracle;SQLdrop user jxxx cascade;四 建表1 Oracle中的基本数据类型(1) char(n):定长字符串(2) varchar2(n):变长字符串(3) number(m):整数(4) number(m,n):浮点数或实数(5) date:日期2 改表alter table s add /modify 3 显示表结构SQLdescribe s;4 删除表drop table s;五 记录的输入及修改输入SQLinsert into s va

    18、lues();2修改SQLupdate s set 六 简单查询select * from s;七 提交和回滚commit/rollback3.2 实验二 Oracle中的表一 Oracle中的表Oracle已经发布了新类型的表,来适应各种类型的数据存储、数据访问以及性能要求。对于所有类型的表,Oracle都允许开发人员和管理人员规定各种表特性。我们应该理解各种表类型,以及用户为什么要选择其中一种类型,而不是其他的类型。在用户应用中,可能常规关系表就可以完成工作,然而其他类型的表可能会让工作更快速,使用更少的磁盘空间,并占用更少的处理器资源。常用的表类型有堆表、外部表、索引组织表和临时表,另外

    19、还有其他一些表类型。二 堆表(heap table):是最基本的表,采用随机存储的方式,在将行写入数据块的时候不会考虑其他行的存储位置,而是将数据写入第一个具有足够自由空间的段,当更新和删除行的时候,就会为新的插入提供可用空间。三 外部表(rxternal tables,Oracle 9i中才有):在数据库以外的文件系统上存储的只读表。通过使用外部表,就无须将数据复制到数据库中,并且强制更新,我们可以让数据保留在普通文件中,并且允许数据库对其进行实地读取。在这种方法中,外部应用可以采用它认为合适的方法更新数据,而且也不用调用SQL*Loader执行数据载入操作。四 索引组织表(IOT表)可以存

    20、储索引这样的内容,以辅助查询性能。索引组织表会以牺牲插入和更新性能为代价提供极好的查询性能。对于总是要通过特定索引访问的表,使用索引组织表来代替堆组织表可以提高性能。建立方法:create table s (sno sname status city primary ) organization index /五 临时表:只在事务处理或会话进行期间存在数据的表。数据会在事务处理或者会话开始以后插入临时表,当事务处理或者会话完成之后就会删除。Oracle中,临时表只需建立一次,建议在需要临时存储数据的应用中使用临时表。例子:SQLcreate global temporary table s1_

    21、tab on commit preserve rows *规定了一个专用于会话的临时表 as select * from s; SQLselect count(* ) From s1_tab; ?SQLcreate global temporary table s2_tab on commit delete rows *规定了一个专用于事务的临时表 as select * from swhere 1=0; SQLinsert into s2_tabselect * from s; SQLselect count(* ) from s2_tab; ? SQLcommit; SQLselect c

    22、ount(* ) from s1_tab; ? SQLselect count(* ) from s2_tab; ? SQLdisconnect SQLconnect wzp/wzpmyoracle; SQLselect count(* ) from s1_tab; ? SQLselect count(* ) from s2_tab; ?六 其它表类型1 分区表:可以将非常大的表分割成较小的片段分区存放2 簇表:物理上存储在一起的两个或多个表(如SQL中连接的表总是会一起受到查询),以减少磁盘读取量。3 散列簇表:类似于簇表,只是存取行的方法不同。七表空间当使用Oracle管理应用数据的时候,

    23、表的特性将会决定怎样建立表,怎样在磁盘上存储表,以及当表生成和可以使用之后,应用最终执行方式。我们可以使用TableSpace子句来规定表的存储位置。该子句可选,若建表时不写该子句则把新建表放在默认表空间中,初始为system。但最好改为users。1 判定默认表空间 select default_tablespace from user_users;2 改变默认表空间(1)初建时(用DBA帐号登录)Create user j001 identified by j001 default tablespace users;(2)初建时未设,后来改(须用DBA帐号登录才可以改)Alter user

    24、 j001 default tablespace users;(3)将表移动到新的表空间Alter table s move tablespace users;八数据词典每一个数据库都有一个数据词典,它是用户的整个Oracle数据库的编目。当建立用户、表、约束和其他数据库对象的时候,Oracle都会自动维护一个在数据库中存储的项编目。用户可以通过以下几个视图得到相关的一些信息:1 User_tables 视图:展示当前用户所拥有的所有表的信息。SQL select table_name,tablespace_name from user_tables order by table_name;2

    25、 DBA_tables视图:数据库管理员帐号可以使用它查看数据库中所有用户的表数据。SQLselect owner,table_name,tablespace_name from dba_tables where owner in(WZP,J101) order by owner,tablespace_name,table_name;3 ALL_tables视图:可以查看有关用户所拥有的表的信息以及用户已经被授予特权的表的信息。SQLselect owner,table_name from all_tables order by owner,table_name;3.3 实验三 ORACLE中

    26、的查询一复杂查询注意点a) 表别名及列别名的设置b) 连接(Oracle8i中无法实现连接,只能用笛卡儿积代替)i. 自然连接ii. 内连接iii. 外连接二 其他语句a) 插入多行insert into s(sno) select distinct sno from spj;b) 生成一张新表create table 女生as select * from student where sex=F;c) 复制表结构create table 女生as select * from student where ;d) 删除表内容delete from s where 3.4 实验四 PL/SQL编程(

    27、一)一 脚本的编写及执行1 在记事本中编写并以*.sql 保存2 运行:路径*.sql;二 PL/SQL的来源及实质PL/SQL是Oracle的过程化编程语言,用户可以使用它编写用来在数据库中执行的定制程序以及过程代码。PL/SQL程序能够存储在数据库中,用于用户应用程序和日常操作。这可以让用户在编程语言中实现与用户数据密切相关的业务逻辑。三 PL/SQL的块结构1 PL/SQL代码使用了程序块(block),利用模块化方式进行构建。每个程序块都是一组逻辑上的变量、可执行代码以及错误控制代码。例:SQLset serveroutput onSQLdeclare L_number number:

    28、=1; Begin L_number:=1+1; Dbms_output.put_line(1+1|to_char(L_number)|!); Exception When others then Dbms_output.put_line(We encountered an exception!); End; /2 块嵌套:程序块可以在可执行部分和异常处理部分包含另外的程序块。例:declarel_text varchar2(20);begin l_text:=First Block; Dbms_output.put_line(l_text); declarel_more_text varchar2(20);begin l_more_text:=Second Block; Dbms_output.put_line(l_more_text); End;End;/四 声明1 变量和常量的声明i. 变量的声明declare l_number_variable number;begin l_number_variable:=50;end;以上方式等价于:declare l_number_variable number:=50;begin null;end


    注意事项

    本文(《数据库原理》实验教学指导书.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开