oracle 数据库里面块大小的优缺点
大块,优点:
1、顺序读、索引读性能好
因为大块容纳的行相对小块数据
多,在进行全表扫描的时候,或者索引扫描的时候,所需要的物理读、逻辑读都要少。
它也能减小索引的树高。对于索引访问
的性能有所提高。
2、大块能容纳比较大的行
容纳大行个人理解,一定程度上可以避免行迁移、行链接。减小大行的读取块的多少。
大块 缺点:
1、因为大行容纳的数据多,不同的行可能会被不同的session 所访问,造成块争用。
2、占用了内存里面太多的内存空间。
因为大行读入内存之后,占用的内存比小块多,而使用的时候可能只是使用很少的一部分数据,降低了内存的效率。
小块,优点:
1、减小DML语句
的块争用。
2、占用内存较少。提高了内存随机访问的效率。
小块缺点:
增加索引树高,不利于索引访问,访问同样的块,I/O读取较多。
小块适用于OLTP系统
,因为OLTP系统DML语句较多,随机访问比较多。
大块适用于OLAP系统,因为OLAP系统的DML较少,大量、连续、全扫描较多,大块的性能优势得到发挥。
相关文档:
http://www.51testing.com/?uid-16403-action-viewspace-itemid-101604
统计信息包括下面几类:
表统计:包括记录数、block数和记录平均长度。
列统计:列中不同值的数量(NVD)、空值的数量和数据分布(HISTOGRAM)。
索引统计:索引叶块的数量、索引的层数和聚集因子(CLUSTERING FACTOR)。
系统统计 ......
DB2 转Oracle
某天是星期几的函数
DB2:
select a.yyxe,a.zblb,a.ysdm,a.daynum,b.zjxm from zy_yspb a ,zy_zjlb b where a.ysdm=b.id and a.ksdm=10000 order by abs( a.daynum -DAYOFWEEK(current date)+1) desc,a.daynum,a.zblb
sql.executeQuery:ORA-00936: 缺失表达式
Oracle :
......
Oracle数据导出很简单,但为了提高速度,我一般不直接导出成DBF,而是先导出成CSV格式的文本文件。
今天就遇到一个问题,导出的csv在转换成dbf时出现了很多空行。经过查找问题,发现是字段中含有换行符导致。
使用
select Replace(zsyj,chr(13)||chr(10),'') as SXPD from TableName
解决问题。 ......
分区表维护的常用命令:
ALTER TABLE
-- DROP -- PARTITION
-- ADD |
-- RENAME |
-- MODIFITY |
-- TRUNCATE |
-- SPILT |
-- MOVE |
-- EXCHANGE |
分区索引的常用维护命令:
ALTER INDEX
-- DROP -- PARTITION
-- REBUILD |
-- RENAME |
-- MODIFITY |
-- SPILT |
-- PARALLEL
-- UNUSABLE
1、ALTER ......
--变量赋值
declare
identity :=0;
a varchar2(59,0);
b varchar2(50):='abc';
a :='cba';
-- 控制语句
----------------------------------
if a>b then
  ......