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

Oracle表空间和数据文件的常用操作

表空间资料查询
SELECT tablespace_name, block_size, extent_management, segment_space_management from dba_tablespaces;
配和
SELECT tablespace_name, initial_extent, next_extent, max_extents, pct_increase, min_extlen from dba_tablespaces;
配合
SELECT tablespace_name, status, contents from dba_tablespaces; 表空间对应数据文件资料查询
SELECT file_id, file_name, tablespace_name, autoextensible, bytes from dba_data_files; 创建数据字典管理的表空间(只有SYSTEM表空间为数据字典管理[Dictionary]时才能创建,10g以后的SYSTEM默认都是本地管理[Local].实质上数据字典管理表空间的做法基本不可行了.而且本技术既落后也低效)
CREATE TABLESPACE xxx DATAFILE 'c:\zzz\yyy.dbf' SIZE 50M, 'c:\mmm\nnn.dbf' SIZE 50M MINIMUM EXTENT 50K EXTENT MANAGEMENT DICTIONARY DEFAULT STORAGE (INITIAL 50K NEXT 50K MAXENTENTS 100 PCTINCREASE 0);

第一个extent为50k,第二个50k.从第三个开始大小为NEXT * ((1 + PCTINCREASE/100)的n-2次方) 创建本地管理的表空间
CREATE TABLESPACE xxx DATAFILE 'c:\zzz\yyy.dbf' SIZE 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;

每个extent都是1兆大小 创建还原表空间 (只能使用DATAFILE和EXTENT MANAGEMENT子句)
CREATE UNDO TABLESPACE xxx_undo DATAFILE 'c:\zzz\yyy_undo.dbf' SIZE 20M; 查询临时表空间资料
SELECT f.file#, t.ts# "TableSpace#", f.name "File", t.name "TableSpace" from v$tempfile f, v$tablespace t WHERE f.ts# = t.ts#; 创建临时表空间
CREATE TEMPORARY TABLESPACE xxx_temp TEMPFILE 'C:\YYY\ZZZ_TEMP.DBF' SIZE 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 2M;

为了提高效率,UNIFORM SIZE最好是SORT_AREA_SIZE(PGA中的排序区大小)的整数倍. 默认表空间
a.) 当数据库没有默认临时表空间时,将使用SYSTEM表空间作为排序区,从而使其碎片化.
b.) 查询当前默认临时表空间
     SELECT * from DATABASE_PROPERTIES WHERE PROPERTY_NAME = 'DEFAULT_TEMP_TABLESPACE';
c.) 变更默认临时


相关文档:

Oracle 插入总结

Oracle 向一个表中插入数据的两种方式:
       Conventional Insert Operations:传统插入会优先使用高水位之下,会保证数据应用完整性:高水位之下是指:删除之后的剩余空间,高水位之上是指:从来没有用过的处女块。
       Direct-path Insert Operatio ......

熟练Oracle的Sql语句必做18道

 使用scott/tiger用户下的emp表和dept表完成下列练习,表的结构说明如下
emp员工表(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate受雇日期/sal薪金/comm佣金/deptno部门编号)
dept部门表(deptno部门编号/dname部门名称/loc地点)
工资 = 薪金 + 佣金
1.列出至少有一个员工的所有部门
2.列出薪金比& ......

Oracle控制文件常用操作

限制控制文件的大小
a.)查询可复用部分的保存天数(不能直接控制大小,保存天数越大数据越多)
SELECT name,value from v$parameter WHERE name = 'control_file_record_keep_time';

b.)设置可复用部分保存时间
ALTER SYSTEM SET CONTROL_FILE_RECORD_KEEP_TIME = 14;
......

Oracle数据导出到DBF的问题

 Oracle数据导出很简单,但为了提高速度,我一般不直接导出成DBF,而是先导出成CSV格式的文本文件。
今天就遇到一个问题,导出的csv在转换成dbf时出现了很多空行。经过查找问题,发现是字段中含有换行符导致。
使用
select Replace(zsyj,chr(13)||chr(10),'')  as SXPD  from TableName
解决问题。 ......

ORACLE三层嵌套实现分页功能和ROWNUM的使用

(一)实现分页及性能
Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用。
分页查询格式:
SELECT * from
(
SELECT A.*, ROWNUM RN
from (SELECT * from TABLE_NAME) A
WHERE ROWNUM <= 40
)
WHERE RN >= 21
其中最内层的查询SELECT * from TABLE_NAME表示不进行翻页的原始查询语句。ROWNUM & ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号