




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品 数据库系统实验报告 学号 姓名 实验时间 实验名称 Oracle环境及数据库创建 实验学时 2 准备材料 1. Oracle 10G 介绍资料 2. SQL Plus命令手册 3. Oracle数据字典 扩展实验 1. 使用企业管理器登录Oracle服务器,观察系统架构及数据库 2. 使用OEM创建、删除数据库 此部分内容不要求在实验至兀成,不用与入实验报口。 实验环境 Oracle 9i(及以上版本)服务器 SQL Plus/ SQL Plus work sheet 客户端 实验目的 1. 了解oracle系统架构 2. 熟悉SQL Plus环境 实验内容 及步骤 1. 使用SQL P
2、lus Worksheet 登录数据库系统(用户名密码由教师 指定) 2. 浏览SQL Plus环境设置命令,并完成下列操作: (1) 察看SQL Plus环境参数 (2) 设置输出页面的大小,每列字符数 120,每页行数100,观 察设置结构 (3) 设置显示每个sql语句花费的执行时间,并观察实验结果 (4) 在SQL Plus中执行操作系统命令,例如copy文件、显示目录等,观 察结果。 (5) 设置将系统输出数据写入文件c:textoutput.txt,执行多个 命令后观察文件内容。 3. 显示系统信息 (1) 显示用户信息 (2) 显示数据库版本信息 (3) 显示数据库中所有表的名称
3、 显示系统中某张表的结构信息(如EMP表) (4) 显示数据库中某张表的数据,如 EMP表 4. 建立磁盘文本文件testcommand.sql,文件内与入几条 SQL命 令,执行此文件,并观察执行结果。 出现问题 解决方案 (列出遇到的问题及其解决方法) 数据库系统实验报告二 学号 姓名 实验时间 实验名称 数据库模式管理 实验学时 4 准备材料 1. SQL Plus命令手册 2. Oracle数据字典 3. Oracle中的数据类型 扩展实验 1.掌握在企业管理器(或其它图形界面的数据库操作工具)中进行 表、索引的创建和管理的方法。 2.利用企业管理器(或其它图形界面的数据库操作工具)观
4、察数据 库的物理模式。 (此部分内容不要求在实验至兀成,不用与入实验报口。 ) 实验环境 Oracle 9i(及以上版本)服务器 SQL Plus/ SQL Plus work sheet 客户端 实验目的 1.掌握使用SQL语句进行表的创建和管理的方法 2.加深对关系数据库结构和数据完整性等概念的理解 实验内容 1.创建书上university 数据库中所有的表(stude nt,course, 及步骤 departme nt. takes, in structor,advisor, prereq, teaches, classroom, section, timeslot ),按书上要求设
5、置每张表的主键、 外键,表中每个字段的类型、长度由学生自己确疋。 2.使用命令完成下列扣作(1)查找用户所有表的表名(2)查看每 张表的结构(要求把每张表的结构截图放到实验报告中)(3 )查 看表takes的约束信息 3.修改表结构 (1)在instructor表中增加列存储教师家庭地址,其地址包括省、市、 区、街道、门牌号等列,列的数据类型自己给出,列允许为空。 对student表中的姓名字段长度都改为10,设置是否成功?原 因是什么?将该字段长度改为 50,能否成功?说明原因。 为student表中tot_cred列设置默认值 0,插入一个Comp. Sci. 系的新学生,且不给其tot_
6、cred列赋值,观察结果。 student表中tot_cred列是对总学分的统计,现在数据库中没 有记录哪些学生已选修课程学分已累加,哪些课程的学分还没有 累加。设计一种方案记录已累加课程,防止出现重复累加的情况。 或者设计一种方案简化总学分的计算过程。 删除takes表上对student表ID的外键约束,查看此约束已删 除。添加一个不存在的学生(id= 01400320101 选修 course_id 为CS001 的课程,并给他一个成绩(成绩值为: A, B, C, D, E或F)。再添加takes表是对student表ID的外键 约束,观察并解释实验结果。 设置takes表ID, cou
7、rse_id,sec_id 三个字段非空,是否能设置 成功,对插入数据有没有影响?删除takes表主键约束,增加 某同学选同一门课程(id, couese_id, sec_id, semester, year, grade都相同)的信息,能否插入成功?解释原因。 4. 参照表student建立一张空表student1。要求用两种方法头现 (create table; create table as)。 5. 增加section表上的约束条件,要求所输入section的年号不大 于当前年号+1,且不小于当前年号-2。插入一条 CS-101开设课的信息,观察并解释实验结果。 6.选择某个约束,分别
8、设置其有效、失效,观察区别。 2009年秋 出现问题 没有问题 解决方案 (列出遇到的问题及其解决方法) 数据库系统实验报告三 学号 姓名 实验时间 实验名称 数据查询 实验学时 4 准备材料 1. SQL Plus命令手册 2. Oracle数据字典 扩展实验 1. 利用企业管理器的图形界面构造查询语句,并察看查询结果 2. 利用企业管理器完成视图、索引的创建与使用。 3. 利用DBMS进行对第三章习题所设计SQL语句的检查 (此部分内容不要求在实验至完成,不用与入实验报告。) 实验环境 Oracle 9i(及以上版本)服务器 SQL Plus/ SQL Plus work sheet 客户
9、端 实验目的 1 掌握使用SQL语句进行数据查询的方法 2.掌握视图的创建与使用方法 3.观察索引的使用效果 实验内容 1.执行文件ddl+drop.sql,创建数据库University中所有表。执行 及步骤 文件 smallRelationslnsertFile.sql,插入实验数据。 2.使用University数据库的数据库结构和数据(smallRelations 即 可),完成下列查询: (1) Find the n ames of courses in Computer scie nee departme nt which have 3 credits (2) For the st
10、ude nt with ID 12345 (or any other value), show all course_id and title of all courses registered for by the student. (3) As above, but show the total numberof credits for such courses (taken by that student). Dont display the tot_creds value from the stude nt table, you should use SQL aggregati on
11、on courses take n by the stude nt. (4) As above, but display the total credits for each of the stude nts, along with the ID of the stude nt; dont bother about the n ame of the stude nt. (Do nt bother about stude nts who have not registered for any course, they can be omitted) (5) Find the n ames of
12、all stude nts who have take n any Comp. Sci. course ever (there should be no duplicate n ames) (6) Display the IDs of all in structors who have n ever taught a couse (Notes 1) Oracle uses the keyword minus in place of except; 2) interpret taught as taught or is scheduled to teach) (7) As above, but
13、display the n ames of the in structors also, not just the IDs. (8) Find the maximum and minimumenrollmentacross all sect ions, con sideri ng only secti ons that had some en rollme nt, dont worry about those that had no students taking that sect ion (9) As in Question (8), but now also include sectio
14、ns with no stude nts tak ing them; the en rollme nt for such secti ons should be treated as 0. Do this in two differentways (and create require data for testi ng) 1). Using a scalar subquery 2). Using aggregati on on a left outer join (use the SQL n atural left outer join syn tax) (10) Find all cour
15、ses whose identifier starts with the s CS-101 (11) Find instructors who have taught all the above courses 1). Using the not exists . except . structure 2). Using matchi ng of counts which we covered in class (dont forget the disti net clause!) tring 3. The uni versity rules allow an F grade to be ov
16、erridde n by any pass grade (A, B, C, D). Now, create a view that lists in formati onabout all fail grades that have not been overridde n(the view should con tai n all attributes from the takes relati on). 4. Find all students who have 2 or more non-overridden F grades as per the takes relation, and
17、 list them along with the F 出现问题 解决方案 (列出遇到的问题及其解决方法) 感谢下载载 数据库系统实验报告四 学号 姓名 实验时间 实验名称 表数据管理 实验学时 2 准备材料 1. SQL Plus命令手册 2. Oracle数据字典 扩展实验 1. 利用企业管理器的图形界面输入数据 2. 利用企业管理器或PL SQL Developer导入、导出TXT文档、Excel 表格中的数据。 (此部分内容不要求在实验至兀成,不用与入实验报口。) 实验环境 Oracle 9i(及以上版本)服务器 SQL Plus/ SQL Plus work sheet 客户端 实验
18、目的 1 掌握使用SQL语句对表进行插入、修改和删除数据的操作。 2.掌握索引创建与使用方法 实验内容 及步骤 1.执行文件ddl+drop.sql,创建数据库University中所有表。执行 文件 smallRelationslnsertFile.sql,插入实验数据。 2. 删除department表中Physics记录,观察能否成功删除。若不 能删除,说明原因。若能删除,观察有外关联的表中数据的变化。 3. 插入一门新课,课程名 Weekly seminar ”课号CS-001,由 Engineering departme nt 开出,学分1,观察实验结果,说明原因。 4. 调整各系员
19、工工资,原工资50000的增加10%,否则 增加6%, 观察结果 5. 第3小题新插入的课程,课程名 Weekly seminar ”课号CS-001, 改为由Comp. Sci.开出,重新插入到course表中。观察实验结果, 说明原因。 6. 假设全体Comp. Sci.学生都要选课Weekly semi nar”且课程要 2013年秋季学期开出,增加课程开出信息、选课信息。 7. 删除学生Brown的Weekly seminar ”课程的选课记录。 8. 假设学期末,教师给出课程Weekly seminar ”的选课学生成绩 单,请依据选课成绩给出每个学生学分。 9. 将学生表中学分to
20、t_cred100 的学生选出来放进对应系的 instructor表中,工资设置为10000. 10. 找出并删除所有未被开出过的课程。 11. 在表takes上course_id子段创建索引,观祭查询速度变化。 12. 在takes表course_id子段上创建索引,试一试能否创建唯一性索 引? 出现问题 解决方案 (列出遇到的问题及其解决方法) 数据库系统实验报告五 学 号 姓名 实验时间 实 验 名 称 权限与事务管理 实验学时 2 准 备 材 料 1. SQL Plus命令手册 2. Oracle数据字典 扩 展 实 验 1. 利用企业管理器的图形界面进行创建用户、角色并进行管理 2.
21、 利用企业管理器的图形 界面完成对数据操纵权限的授权与回收工作 (此部分内容不要求在实验至兀成,不用与入实验报口。) 实 验 环 境 Oracle 9i(及以上版本)服务器 SQL Plus/ SQL Plus work sheet 客户端 实 1 掌握权限管理语句与视图进行安全性控制的方法 验 目 的 实 每两个同学一组,自由组合完成下列操作要求(使用grant, revoke语句和视图): 验 1.执行教师提供的命令文件,建立uni versity数据库,并输入数据。 内 2.同学A设置同学B对A.course 表具有查询权限,对 A.instructor 表中salary 容 字段具有更
22、新权限;同学B查看元数据表,查找自己被子授权使用的数据。 及 步 3.同学B授权同学A对B. instructor表具有插入数据、删除数据的权限,同学A 骤 用命令试验能否完成相应操作。 4同学A授权同学B,对A.student表具有修改表结构的权限,同学B得到修改 表结构的命令验证授权是否成功。 5.同学B授权同学A对B. student表具有增、删、改、查的权限,并允许他将 权限授权给其它同学。同学 A验证授权是否成功,并试验能否将权限授予其它同 学(例如同学C)。 6.同学A收回授权同学B的student表上的所有权限,同学 B验证是否回收成 功。 7. 同学A通过视图授权同学B具有察看
23、每个部门职工最高、最低、平均工资的权 限,但不允许他察看每个人的工资。同学B验证授权是否成功。 8. 同学A、B撤销所有已授给对方的权限,如果同学C从同学A得到对同学B student表的访问 权限,察看其权限是否一并收回。 9. 事务查看 使用如下命令,查看当前事务、会话情况: (1)show parameter processes; show parameter sessi on; (2) select n ame, type, value ,display_value, isses_modifiable, issys_modifiable from v$parameter where n
24、 ame=sessi on s; select n ame, type, value ,display_value, isses_modifiable, issys_modifiable from v$parameter where n ame=processes; SELECT * FROM V$SESSION WHERE USERNAME = ORDER BY LOGON_TIME, SID; SELECT P.SPID, S.SID, S.SERIAL# FROM V$PROCESS P INNER JOIN V$SESSION S ON P.ADDR = S.PADDR WHERE S
25、.AUDSID=USERENV( SESSIONID); 注:此表可能学生没有权限查看,如果有兴趣,在自己电脑上试试。 10 事务提交方式有三种:显式提交 隐式提交和自动提交。SQL PLUS中可通过命令可 进行提交方式设置,设置不同提交方式。 事务命令有: BEGIN TRANSACTION 、COMMIT、ROLLBACK、SAVEPOINT、RELEASE SAVEPOINT、SET ISOLATION LEVEL 事务隔离级别: 离层 错读|脏读 非重复读取|不可重复读 假读1幻读 READ UNCOMMITTED(非提交读) 是 是 是 READ COMMITTED( 提交读) 否
26、是 是 Repeatable READ(可重复读) 否 否 r 是 Serializable(串行读) 否 否 否 Oracle 只支持 ead committed 、serializable 和 Repeatable READ 三种,不支持 READ UNCOMMITTED 。 完成下列和事务相关的操作: (1) 修改事务隔离级别(Set transaction isolation level read committed、 Set transaction isolation level serializable ), AB 两同学一起操作同一张表, A.instructor ,B同学修改数
27、据,A同学查询数据,查看在什么情况下可查看到B 同学刚刚修改的数据。 (2) 设置自动提交,A、B同学同时操作同一张表的数据,察看是否可看到最新修改结果。 (3) B冋学设置 SAVEPOINT,进行数据操作、rollback 到该savepoint , A冋学在各个步 骤察看数据变化情况。在不同隔离级别下执行相同操作,察看数据的不同点。 出 现 问 题 解 决 方 案 (列出遇到的问题及其解决方法) 数据库系统实验报告六 学号 姓名 实验时间 实验名称 存储过程、函数和事务 实验学时 2 准备材料 1. SQL Plus命令手册 2. PL/SQL用户手册 3. 实验教材中实验五、六 扩展实验 1.利用企业管理器完成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蓄电池基础知识培训课件
- 2025年全国育婴师中级职业技能考试题库(含答案)
- 2025年辽宁省中考英语试卷(含答案)
- 产后抑郁症护理考试题及答案
- 曹禺中学期末考试卷子及答案
- 藏族近代文学考试题库及答案
- 什么依然的初三作文15篇
- 学前儿童卫生与保育(微课版) 课件 项目八 幼儿园的卫生保健工作
- 2025关于有偿合同的违约处理
- 物流服务师题库及答案
- 2025-2026学年统编版小学语文四年级上册教学计划及进度表
- 2025年湖北省武汉市中考语文真题(含答案)
- 中国心房颤动管理指南2025解读
- Unit1Weletotheunit课件译林版八年级英语上册
- 离职交接事项协议书范本
- 【高考真题】海南省2025年高考真题物理(含答案)
- 体育教师自我介绍课件
- 银行员工职业操守课件
- 初中开学第一课心理健康课
- 艺康servsafe培训课件
- TDT1067-2021不动产登记数据整合建库技术规范
评论
0/150
提交评论