- 博客(13)
- 问答 (1)
- 收藏
- 关注
Oracle 索引分区介绍
一. 概述 和表分区一样,索引也可以进行分区。oracle中对索引进行分区有两种方式: 1. 每一个索引分区对应一个表分区,而且只索引该表分区。也就是有多少个表分区就有多少个索引分区。称之为局部分区索引。 2. 索引按照区间分区(或者散列分区),一个索引可以指向任何表分区的数据。索引分区个数与表分区个数没有关系,称之为全局分区索引。 ...
2012-10-31 14:47:28 137
Oracle 表分区机制介绍
一. 概念 一个表被分成了很多个独立的分区,那么每一个分区应该存储哪些数据,这就是表分区机制要解决的问题。 二. 表分区机制概述 目前oracle中有四种分区机制: 1. 区间分区:可以指定应当存储在一起的数据区间。例如,时间戳在Jan-2005内的所有记录都存储在分区1中,时间戳在Feb-2005内的所有记录都存储在...
2012-10-30 19:43:31 286
Oracle 分区概述
一. 概念 分区是将一个表或者索引物理地分解成多个更小的部分。对于访问数据库的应用来看,逻辑上看只有一个表或者索引,因为访问和普通表或索引一模一样。但物理上这个表可能被分成了数十个独立的分区,每一个分区都是独立的对象,可以独自处理。 二. 如何区分数据 分区主要有利于非常大的表和索引,将一个大表或者索引分成很多独立的小部分更容易进行处理...
2012-10-30 16:34:39 169
Oracle日期类型介绍
oracle与日期有关的有三种类型:date,timestamp与interval。DATE和TIMESTAMP类型存储精度可变的固定日期/时间,二者区别是,后者秒可以精确到小数,另外还可以有时区之分。。INTERVAL类型可以很容易地存储一个时间量,如“8个小时”或“30天”。将两个日期相减,就会得到一个时间间隔(INTERVAL);例如,将8小时间隔加到一个TIMESTAMP...
2012-10-29 11:22:02 795
Oracle number类型的语法和用法
number类型的语法很简单,就是: number(p,s) p,s都是可选的,假如都不填,p默认为38,s默认为-48~127。 1. 精度(precision),或总位数。默认情况下,精度为38位,取值范围是1~38之间。也可以用字符*表示38。 2. 小数位置(scale),或小数点右边的位数。小数位数的合法值为-48...
2012-10-29 09:52:55 483
原创 oracle字符串类型介绍
Oracle中有4种基本的字符串类型,分别是CHAR、VARCHAR2、NCHAR和NVARCHAR2。在Oracle中,所有串都以同样的格式存储。在数据库块上,最全面都有一个1~3字节的长度字段,其后才是数据,如果数据为NULL,长度字段则表示一个但字节值0xFF。 如果一个包含"hello world"的varchar2(80), 块中结构如图所示: ...
2012-10-29 09:31:55 1352
原创 Openbravo3.0 服务端技术--数据访问层(Data Access Layer)
Data Access Layer(DAL)描述的是服务端处理客户请求的逻辑,它将逻辑处理和数据处理分离开来,处理逻辑的时候是我们编写java代码,比如前台需要更新一个字段,我们构造一个对象,将这个字段值设置进去,这样的逻辑是我们通过java代码编写来实现。进行数据处理的时候,比如保存,是我们将要保存的对象传给一个接口,接口帮我们处理,至于接口怎么处理我们就不需要管了。 ...
2012-10-24 23:46:37 250
Oracle数据类型概述
选择合适的数据类型至关重要,因为一旦选定今后很难修改。Oracle提供了22种不同是SQL数据类型,简要介绍一下: 1. char类型:定长字符串,会用空格填充达到最大长度。非空的char(12)总是包含12字节,最大为2000字节。 2. nchar类型:这是一个包含unicode格式数据的定长字符串,非空的char(12)总是包含12字...
2012-10-23 11:14:33 66
Oracle为什么没有使用索引场景
场景1: 假设有一个表T,在T(x,y)上有一个索引。如果我们做一个查询:select * from t where y=5。此时优化器不会使用索引,因为查询条件中不包含索引最前列(x列)。如果使用索引,可能必须查看每一个索引条目,因为索引键可能是这样排列的:1,2 1,3 1,4 1,5 2,1 2,4 2,6 3,1......我们不知道y=5会在哪个地方出现。...
2012-10-23 10:37:35 202
原创 Oracle基于函数的索引
比如执行如下一条SQL语句:select * from emp where upper(ename) = 'KING',即使在ename上建立了索引,还是会全表扫描emp表,将里面的ename字段改成大写跟常量KING进行比较。如果我们建立一个基于函数的索引,比如:create index emp_upper_idx on emp(upper(ename)); 这个时候,我们只...
2012-10-23 09:02:41 413
原创 Oracle位图索引
假设一个100W行的表有一个字段会频繁地被当做查询条件,我们会想到在这一列上面建立一个索引。但是这一列只可能取3个值。那么如果建立一个B*树索引(普通索引)是不行的,因为无论查找哪一个值,都可能会查出很多数据。那么位图索引就会很适合了。 如果我们在emp表的job列建立一个位图索引: create BITMAP index job_idx on em...
2012-10-22 10:00:39 98
Oracle B*树索引
B*树索引就是我们说的“传统”索引,这是数据库中最常用的一类索引结构。其实现与二叉查找树类似,目标是减少oracle查找数据的时间。如果在一个数字列上有一个索引,那么理论上结构应该是这样的: 这个树最底层是叶子节点,包含索引键以及一个rowid(指向索引行)。叶子节点上面的称为分支块,用于在结构中实现导航。例如:想在索引中找到值42,从树顶开始查找,进入左分支...
2012-10-19 16:52:49 1002
原创 Openbravo3.0 客户端代码开发与API
一. 客户端代码开发工具 Openbravo3.0客户端代码开发是大量的javascript代码,CSS代码和极少量的html代码开发。我们是通过浏览器加载来查看客户端主要的javascript代码的,一般如下两个工具选择一个,Chrome Developers Tools和Firebug 二. smartclient源码整合入Op...
2012-10-04 18:13:59 277
空空如也
Oracle 如何从几百万条数据中删除2000多条数据
2011-07-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人