易截截图软件、单文件、免安装、纯绿色、仅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全局索引和本地索引

Oracle索引分区杂谈
<> Oracle数据库中,有两种类型的分区索引,全局索引和本地索引,其中本地索引又可以分为本地前缀索引和本地非前缀索引。下面就分别看看每种类型的索引各自的特点。
全局索引以整个表的数据为对象建立索引,索引分区中的索引条目既可能是基于相同的键值但是来自不同的分区,也可能是多个不同键� ......

北大青鸟oracle学习笔记18

异常
预定义异常
oracle为常见错误预定义
在DBMS_STANDARD程序包中提供了这些定义
不需要显示声明
declare
  sex student.stu_sex%type;
begin
  select stu_sex into sex from student;
  dbms_output.put_line('sex:'||sex);
exception
&nbs ......

oracle 常见的函数

1. ASCII
返回与指定的字符对应的十进制数;
SQL> select ascii(A) A,ascii(a) a,ascii(0) zero,ascii( ) space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
2. CHR
给出整数,返回对应的字符;
SQL> select chr(54740) zhao,chr(65) chr65 from dual;
ZH C
-- ......

Oracle字符串处理函数


Oracle字符串处理函数
2008年10月18日 星期六 23:45
项目中有涉及存储过程对字符串的处理,所以就将在网上查找到的资料汇总,做一个信息拼接式的总结。
以下信息均来自互联网,贴出来一则自己保存以待以后使用,一则供大家分享。
字符函数——返回字符值
这些函数全都接收的是字符族类型的参数(CHR除外)并 ......

Oracle数据库分区表操作方法

在大型的企业应用或企业级的数据库应用中,要处理的数据量通常可以达到几十到几百GB,有的甚至可以到TB级。虽然存储介质和数据处理技术的发展也很快,但是仍然不能满足用户的需求,为了使用户的大量的数据在读写操作和查询中速度更快,Oracle提供了对表和索引进行分区的技术,以改善大型应用系统的性能。
使用分区的优点� ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号