oracle开发知识点
1. 分区表
Oracle
建议如果单个表超过2G就最好对其进行分区。
对大表的查询、增加、修改等操作可以分解到表的不同分区来并行执行,可使运行速度更快;
1)
Range分区
Range分区呢是应用范围比较广的表分区方式,它是以列的值的范围来做为分区的划分条件,将记录存放到列值所
在的range分区中,比如按照时间划分,2008年1季度的数据放到a分区,08年2季度的数据放到b分区,因此在创建的时候呢,需要你指定基于的列,
以及分区的范围值,如果某些记录暂无法预测范围,可以创建maxvalue分区,所有不在指定范围内的记录都会被存储到maxvalue所在分区中,并且
支持指定多列做为依赖列
CREATE TABLE sales
(invoice_no NUMBER,
...
sale_date DATE NOT NULL )
PARTITION BY RANGE (sale_date)
(PARTITION sales1999_q1
VALUES LESS THAN (TO_DATE(‘1999-04-01’,’YYYY-MM-DD’)
TABLESPACE ts_sale1999q1,
...
PARTITION sales1999_q4
VALUES LESS THAN (TO_DATE(‘2000-01-01’,’YYYY-MM-DD’)
TABLESPACE ts_sale1999q4 );
--values less than (maxvalue)
2)
Hash分区
通常呢,对于那些无法有效划分范围的表,可以使用hash分区,这样对于提高性能还是会有一定的帮助。hash
分区会将表中的数据平均分配到你指定的几个分区中,列所在分区是依据分区列的hash值自动分配,因此你并不能控制也不知道哪条记录会被放到哪个分区
中,hash分区也可以支持多个依赖列。
create table emp (
empno number(4),
...,
sal number)
partition by hash (empno)
(
PARTITION PART01 TABLESPACE HASH_TS01,
PARTITION PART02 TABLESPACE HASH_TS02,
PARTITION PART03 TABLESPACE HASH_TS03
)
3)
List分区
你能控制记录存储在哪个分区。它的分区列只能有一个
,要创建一个default分区存储那些不在指定范围内的记录。
create table emp (
empno number(4),
...,
location varchar2(30))
partition by list (location)
(partition p1 values ('北京') TABLESPACE PROB_TS01,
partition p2 values ('上海','天津','重庆') TABLESPACE PROB_TS02,
partition p3 values ('广东
相关文档:
已经安装orcale 9i 和pl/sql(6.0)
OracleJobSchedulerORCL、OracleOraDb10g_home1iSQL*Plus
OracleOraDb10g_home1TNSListener
OracleServiceORCL
第一个是oem控制台服务进程
第二个是定时器和isql*plus的服务进程
第三个是监听器的服务进程
最后是数据库服务进程
1. pl/sql
客户机安装后还要配置tnsnames.ora文件, ......
1. select * from t1 left join t2 on t1.c1 = t2.c2
是左边的表(t1) 全部显示,t2没有的用null代替。 右连接相反(t2)
2. (+)的连接时另一个全部显示。
select * from t1 left join t2 on t1.c1 = t2.c2 和 select * from a,b where t1.c1 = t2.c2(+) 效果一样。
3. FULL OUTER JOIN:全外关联
SELECT e.last ......
oracle8i 驱动 ojdbc14.jar 这个驱动有问题,分页时要手动 写 rownum<m ,它自动成生的分页不正确,用的mysql的top m
Null value was assigned to a property of primitive 把entity中int类型改成Integer 库中不设置nullable
number(9) 的id 不能用Interger,得用BigDecimal,要不然取id时会报错 ......
oracle9 startup时 报错ORA-00600: 内部错误代码,参数: [kcratr1_lostwrt], [], [], [], [], [], [], []
原因可能是非法关机或掉电造成,以下是出现的问题及解决方法:
C:\Documents and Settings\Administrator>sqlplus
SQL*Plus: Release 9.2.0.1.0 - Production on 星期日 5月 13 09:23:23 2007 ......