日期:2014-05-16  浏览次数:20529 次

方案对象管理

一、方案

方案是数据库用户拥有的数据库对象的集合,方案对象是直接引用数据库的逻辑结构,对象包括表、索引、序列、视图、同义词等结构。

 这一章大部分内容,我们在SQL的第九章创建和管理表及约束和第十章其它常用对象都已讲过,做一些补充。

 

二、表

1、表的类型

(1)堆组织表

堆表就是普通表,也叫堆组织表。之所以这样叫,是因为他使用数据结构中堆的算法来组织表。堆表的特点就是插入的行没有顺序。

 

(2)索引组织表

索引组织表(index organizedtable)就是存储在一个索引结构中的表。一定要有索引,其实也就是一定要有一个主键,表中行的顺序将按照主键的顺序,依次排列。索引组织表的ROWID被称为UROWID,也被称为逻辑ROWID,它的主要成份是主键,是可变的。

 

(3)聚簇表

 聚簇(CLUSTER)是指:如果一组表有一些共同的列,则将这样一组表存储在相同的数据库块中;聚簇还表示把相关的数据存储在同一个块上。

A、索引聚簇表:利用聚簇索引来查找数据的聚簇类型称为索引聚簇。

B、散列聚簇表:利用哈希函数来查找数据的聚簇类型称为哈希聚簇(也称为散列聚簇)

 

(4)临时表

临时表可以提高数据库处理性能,在没有必要存储时,就存储临时中,用户只能够操作各自的数据中。

分有两类临时表:会话级的临时表和事务级的临时表。

 

(5)外部表

   外部表,是指存储在Oracle数据库之外的表,数据库中只有表结构的定义,真正的数据并未存储在数据库中。外部数据表都是只读的,因此在外部表不能够执行DML操作,也不能创建索引。

 

2、创建表

(1)创建组织表

  gyj@OCM>  Create table t15(id int, name varchar2(10));

 

Table created.

 

(2)创建一个简单的索引组织表

 gyj@OCM> create table iot10(id int primary key,namevarchar2(20),job varchar2(40)) organization index tablespace tp1;

 

Table created.  

 

(3)索引聚簇表

我来建两个表一个是班级代码表,一个是学生基本信息表,现在利用聚簇表把jsj01(计算01)班的学生都存储在同一个块上,如果一个块放不下,则存储在尽可能少的几个块中。

Student(sname,classno)

 

Joe      jsj01

Rose     jsj01

Jack     jsj01

Tom     jsj02

Jeny     jsj02

Tony     jsj02

Lewis    jsj02

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Class(classno, cname)

 

jsj01   计算机01

jsj02   计算机02

jsj03   计算机03

jsj04   计算机04

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

student_class_cluster

 

友情链接: 爱易网 云虚拟主机技术 云服务器技术 程序设计技术 开发网站 APP开发教程
Copyright © 2013-2024 爱易网页 当前在线:606人  网站在3时47分33秒内访问总人数:76040人 当前 28.58%  粤ICP备18100884号-2

Jsj01

Joe

Rose

Jack

计算机01