You are on page 1of 11

北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.

com

时代朝阳会员专区:Oracle 日常管理
Oracle10g 中数据库表、索引、视图、同
义词的管理

达成的目标/方案
站在 DBA 角度,在 Oracle10gR2 中实现下列对象的创建、维护、删除等日常管理:

1 表的管理
2 索引的管理
3 视图的管理
4 同义词的管理

软硬件系统配置
操作系统 Windows 2003 Enterprise
文件系统格式 NTFS
服务器配置 机器名:Home
IP 地址:192.168.3.184
存储方式:文件系统
数据实例名 ORCL(ORACLE_SID)
操作系统内存使用 585M
数据库连接模式确 独占模式

是否归档模式 是
是否设置回闪工作 是

数据库用户 sys/oracle 系统管理员 SYSDBA
(用户名/口令) system/oracle 数据库管理员 DBA
scott/tiger 演示用户
zydb/oracle 普通用户

时代朝阳会员专区 第 1 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

详细操作过程描述

表的管理

1 启动数据库管理控制台(即 OracleDBConsoleorcl 服务),启动浏览器连接到数据库


管理控制台,用 SYS 用户登录。然后,选择“管理”工作区,如下图所示:

可以看到,在这个工作区中,我们可以管理如下的数据库对象:

2 选择点击方案中的“表”,进入到表管理工作区。

时代朝阳会员专区 第 2 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

在这里,我们可以创建对象,查看对象属性等操作。

3 点击“创建”按钮,创建表。在创建表工作区中指定表的组织形式。使用标准的
按堆组织结构,还是索引表 (IOT)。这里选择“标准, 按堆组织”结构,但非临时
表。点击“继续”按钮,进入表的一般信息定义工作区,到如下图所示:

4 为用户 SDZY1 创建表,表名称为“DEPT”。方案为 SDZY1,表空间为 TEST。在


指定上面的参数时,可以点击 来协助查找当前系统中的“方案”名称和“表
空间”名称。

时代朝阳会员专区 第 3 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

5 点击“约束条件”标签,定义表的约束条件。首先选择约束条件类型,选择
“PRIMARY”(主键类型),然后点击“添加”按钮。
6 在“添加 PRIMARY 约束条件”工作区中,定义约束名为“Constraint_1”,所选
列为“DEPTNO”,如下图所示:

点击确定按钮返回“约束条件”定义工作区。

7 点击“存储”标签,定义表的存储属性。由于要创建的表 DEPT,代表的是“部门”,
其数据一般不会改变。因此,修改其“空闲空间 (PCTFREE)(%)”属性,由 10%
改为 0%。点击“确定”按钮。如果返回消息为“更新消息 已成功创建 表
SDZY1.DEPT”,则表 DEPT 创建成功。

时代朝阳会员专区 第 4 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

索引的管理

1 选择“管理”工作区中,点击方案中的“索引”,进入到索引管理工作区。查找表
“SDZY1.DEPT”上定义的索引。在方案项输入“SDZY1”,在对象名项输入“DEPT”。
点击开始按钮,结果将如下图所示:

可以看到,表“SDZY1.DEPT”上面已经有一个索引“Constraint_1”了.这个索引是
因为我们在上一节试验中创建表“SDZY1.DEPT”的主键约束时,Oracle 系统自动给
定义的。约束名“Constraint_1”就是索引名“Constraint_1”。

2 点击“创建”按钮,进入到“创建索引”工作区。输入索引名称“INDEX_DEPT_1”,
方案名称“SDZY1”,表空间“TEST”,索引类型选择“标准-B 树”索引。然后,输
入表名“SDZY1.DEPT”,再点击“置入列”按钮,在下面的区域中将列出 SDZY1.DEPT
表的所有列。在 DNAME、DEPTNO 列后面的“顺序”分别输入 1、2,表示这个索
引对象中,第一列是 DNAME,第二列是 DEPTNO。

输入完成后,点击“确定”按钮,如系统提示成功更新,则索引对象创建成功。

时代朝阳会员专区 第 5 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

视图的管理

1 选择“管理”工作区中,点击方案中的“视图”,进入到视图管理工作区。查找用
户 SDZY1 拥有的视图,在方案项输入“SDZY1”,点击开始按钮,结果将如下图
所示:

可以看到,用户 SDZY1 未拥有视图对象。

2 点击“创建”按钮,进入到“创建视图”工作区。输入视图名称“SDZY1_VIEW”,
方案名称“SDZY1”。然后,输入查询文本如下:

select DEPTNO,DNAME,LOC from DEPT

结果如下图所示:

时代朝阳会员专区 第 6 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

3 点击“选项”标签,设定视图属性。首先为视图设定检查约束,其次输入约束条
件名称,如下图所示:

点击确定按钮,系统返回更新成功消息。

4 在 控 制 台 启 动 一 个 SQLPLUS , 用 帐 户 “ sdzy1 ” 连 接 。 对 表 DEPT 和 视 图


SDZY1_VIEW 分别进行 DML 操作,过程如下:

SQL> connect sdzy1/oracle


Connected.
SQL> insert into dept values (10,'sales','floor 10');
1 row created.

SQL> insert into SDZY1_VIEW values (20,'support','floor 20');


1 row created.

SQL> select * from dept;


DEPTNO DNAME LOC
---------- -------------- -------------
10 sales floor 10
20 support floor 20
SQL> select * from SDZY1_VIEW;

时代朝阳会员专区 第 7 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

DEPTNO DNAME LOC


---------- -------------- -------------
10 sales floor 10
20 support floor 20

SQL> commit;
Commit complete.

SQL> insert into SDZY1_VIEW values (20,'support','floor 20');


insert into SDZY1_VIEW values (20,'support','floor 20')
*
ERROR at line 1: ORA-00001: unique constraint (SDZY1.CONSTRAINT_1)
violated

可以看到,上面的视图 SDZY1_VIEW 实际上可以起到于表一样的作用,并且具有


有效的约束。

同义词的管理

1 选择“管理”工作区中,点击方案中的“同义词”,进入到同义词管理工作区。查
找用户 SDZY1 拥有的同义词,在方案项输入“SDZY1”,点击开始按钮,结果将
如下图所示:

2 点击“创建”按钮,进入到“创建视图”工作区。输入同义词名称为“DEPT”,
类型为“公用”,即公用同义词,“别名,代表”项输入“SDZY1.DEPT”,数据库
为指向本地数据库,如下图所示:

时代朝阳会员专区 第 8 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

3 点击“确定”按钮,系统返回更新成功消息。

4 在控制台启动一个 SQLPLUS,用帐户“system”连接。对同义词 DEPT 进行操作,


过程如下:

SQL> connect system/oracle


Connected.
SQL> select * from dept;
DEPTNO DNAME LOC
---------- -------------- -------------
10 sales floor 10
20 support floor 20

SQL> insert into dept values (30,'service','floor 30');


1 row created.
SQL> commit;
Commit complete.

SQL> connect sdzy1/oracle


Connected.
SQL> select * from dept;
DEPTNO DNAME LOC
---------- -------------- -------------
30 service floor 30
10 sales floor 10
20 support floor 20

可以看到,system 用户能够通过同义词 DEPT 访问到 SDZY1 用户的 DEPT 表,并


操作之。

时代朝阳会员专区 第 9 页
www.zhaoyang-db.com/huiyuan
北京时代朝阳数据库技术中心 Trail 实验室 www.zhaoyang-db.com

体会与总结
1 数据库涉及到的对象可以在 OEM 环境下管理
2 在 Oracle10g 中,OEM 工具基于 web 页面
3 OEM 工具界面友好易用,但并不规范。
4 如果可能,DBA 应将要做的操作脚本化,并在控制台下执行。

时代朝阳会员专区 第 10 页
www.zhaoyang-db.com/huiyuan

You might also like