易截截图软件、单文件、免安装、纯绿色、仅160KB

Oracle数据库中的索引详解

一、 ROWID的概念
  存储
了row在数据文件中的具体位置:64位编码的数据,A-Z, a-z, 0-9, +, 和 /,
  row在数据块中的存储
方式
  SELECT ROWID, last_name from hr.employees WHERE department_id = 20;
  比如:OOOOOOFFFBBBBBBRRR
  OOOOOO:data object number, 对应dba_objects.data_object_id
  FFF:file#, 对应v$datafile.file#
  BBBBBB:block#
  RRR:row#
  Dbms_rowid包
  SELECT dbms_rowid.rowid_block_number('AAAGFqAABAAAIWEAAA') from dual;
  具体到特定的物理文件
  二、 索引的概念
  1、 类似书的目录结构
  2、 Oracle
的“索引”对象,与表关联的可选对象,提高SQL查询语句的速度
  3、 索引直接指向包含所查询值的行的位置,减少磁盘I/O
  4、 与所索引的表是相互独立的物理结构
  5、 Oracle
自动使用并维护索引,插入、删除、更新表后,自动更新索引
--工作感觉中 所谓oracle自动维护在插入后,其实好像并非如此!不是oracle 独立的进程在 插入后开始维护
而是在插入这个SESSION中维护,在insert into   commit; 语句后维护。
  6、 语法:CREATE INDEX index ON table (column[, column]...);
  7、 B-tree结构(非bitmap):
  [一]了解索引的工作原理:
  表:emp
  
  目标:查询Frank的工资salary
  建立索引:create index emp_name_idx on emp(name);
以下图说明节点和叶节点的关系,节点负责二叉树的路径,如同书目录左边的目录列表 ;
叶节点就是目录列表右边的页码
索引也会很大化 因为它也要存储些字段和字段的值
三、 唯一索引
  1、 何时创建:当某列任意两行的值都不相同
  2、 当建立Primary Key(主键)或者Unique constraint(唯一约束)时,唯一索引将被自动建立
  3、 语法:CREATE UNIQUE INDEX index ON table (column);
  4、 演示
  四、 组合索引
  1、 何时创建:当两个或多个列经常一起出现在where条件中时,则在这些列上同时创建组合索引
  2、 组合索引中列的顺序是任意的,也无需相邻。但是建议将最频繁访问的列放在列表的最前面
  3、 演示(组合列,单独列)
  五、 位图索引
  1、 何时创建:
  列中有非常多的重复的值时候。例如某列保存了 “性别”信息。
  Where 条件中包含了很多OR操作符。
  较少的update操作,因为要相应的


相关文档:

oracle中type

oracle中自定义数据类型
oracle中有基本的数据类型,如number,varchar2,date,numeric,float....但有时候我们需要特殊的格式,如将name定义为
(firstname,lastname)的形式,我们想把这个作为一个表的一列看待,这时候就不要我们自己定义一个数据类型
create or replace type type_name as object(firstname varchar ......

oracle修改用户名

 --sqlplus
sqlplus;
sys /password as sysdba;
--查找用户ID(user#),数据库里面存放的用户都是大写!
select user#,name,password from user$ where name ='FACT';
USER# NAME                      ......

如何获得Oracle OCP认证以及OCP认证的优势

Oracle认证专家——OCP,是由Oracle公司授权国际考试认证中心对考生进行的资格认证。考生按考试标准要求参加几门课程的考试(一般为3—5门),在通过全部考试后,便可获得OCP的专家认证。
目前OCP认证考试分为:
Database AdministratorDatabase OperatoDatabase DeveloperJava DeveloperApplication Consul ......

Oracle临时表的几种用法及意义

Oracle临时表可以说是提高数据库处理性能的好方法,在没有必要存储时,只存储在Oracle临时表空间中。希望本文能对大家有所帮助。
1 、前言
目前所有使用 Oracle 作为数据库支撑平台的应用,大部分数据量比较庞大的系统,即表的数据量一般情况下都是在百万级以上的数据量。
当然在 Oracle 中创建分区是一种不错的选择,但 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号