图1-26 添加数据库
图1-27 数据库添加成功
添加数据库后,开始连接。
- 14 - / 52
图1-28 连接数据库
连接数据库时,使用用户名:sys;密码:change_on_install,连接身份有SYSDBA、SYSOPER、Normal。sys只能以SYSDBA身份登录。
- 15 - / 52
图1-29 设置登录参数
图1-30 连接成功
五、实验报告要求
本次实验不需要提交上机实验报告。 六、思考题
Oracle中数据库、实例、本地服务名有何关系?
- 16 - / 52
实验二 使用和管理Oracle表、约束、索引、视图
一、实验目的
1.学会在OEM中创建表,学会用SQL语句创建表;
2.学会在OEM中和用PL/SQL语句对数据库表进行插入、修改、删除数据的操作;
3.熟悉索引的建立和各种数据完整性的实现方法;
4.熟练掌握SELECT语句、子查询、连接查询的表示及视图的使用方法。 二、实验内容
1.建立表;
2.在表上建立各类约束; 3.测试索引对查询的影响;
4.建立视图,并测试通过视图更新数据的限制; 5.建立触发器,并测试。 三、实验仪器、设备
软件:网络环境、Windows Server/NT或Linux或Unix操作系统、Oracle 9i。
硬件: PIII 1G以上CPU、512 M以上内存、6.4GB以上的空闲磁盘空间和1000MB虚拟内存。 四、实验步骤
1.表和约束
1)在自己的用户下,建立表emp和表dept,结构如下:
- 17 - / 52
2)在emp表的empno列上建立主键约束。 3)在dept表的deptno列上建立主键约束。
4)在emp表的deptno列上建立外键约束,关联dept表的deptno列。 5)在USER_CONSTRAINTS数据字典中查看emp表和dept表上建立的哪些约束。
6)在USER_OBJECTS中查看emp表和dept表上有哪些对象,及对象的类型。
提示:当建立主键约束时,相关列上会自动建立索引。
7)在emp表的sal、comm列上分别创建函数约束,确认sal、comm的数值不能小于等于0。
2.索引
1)查看某个select语句(具体要使用的语句自己决定)的执行计划,通过执行set autotrace的几个不同命令查看其不同的显示效果。
set autotrace on set autotrace traceonly set autotrace trace explain set autotrace trace statistics
2)当查询返回的结果数量大于1%时,索引不会用到,而小于1%时,索引一般会用到。在表emp中的dept上,用实验验证上述结论。
提示:可适当增加表中数据量。
3)利用数据字典视图index_stats,查看2)中相关索引的层数(注意要首先对表进行分析)。
4)利用desc user_indexes查看user_indexes数据字典视图的结构,然后利用user_indexes查询当前用户有哪些索引,分别建立到哪张表上。
5)以is null作为查询条件,确定索引是否会被用到。
- 18 - / 52