加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

Oracle的表压缩

发布时间:2021-01-26 09:04:46 所属栏目:站长百科 来源:网络整理
导读:1、官方文档说法: Oracle支持在表空间(tablespace)、数据表(table)和分区(Partition)级别的压缩,如果设置为表空间级别,那么默认将该表空间中的全部的表都进行压缩。 压缩操作可以在数据单条插入、数据修改和数据批量导入时发生。 ? As your databas

--很明显少占用4个数据块
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
4.5 禁用表压缩

[email?protected]> alter table emp_comp NOCOMPRESS;

表已更改。

[email?protected]> SELECT table_name,compress_for
2 FROM user_tables
3 WHERE table_name=‘EMP_COMP‘
4 ;

TABLE_NAME COMPRESS COMPRESS_FOR
------------------------------ -------- ------------
EMP_COMP DISABLED
1
2
3
4
5
6
7
8
9
10
11
12
4.6 启用表压缩

[email?protected]> alter table emp_comp COMPRESS;

表已更改。

[email?protected]> SELECT table_name,compress_for
2 FROM user_tables
3 WHERE table_name=‘EMP_COMP‘;

TABLE_NAME COMPRESS COMPRESS_FOR
------------------------------ -------- ------------
EMP_COMP ENABLED BASIC
1
2
3
4
5
6
7
8
9
10
11
5、最后来看下表压缩的几个使用限制:
1)对于基本压缩,你无法在压缩表上增加一个带默认值的列:

[email?protected]> alter table emp_comp add remark varchar2(200) default ‘null‘;
alter table emp_comp add remark varchar2(200) default ‘null‘
*
第 1 行出现错误:
ORA-39726: 不支持对压缩表执行添加/删除列操作
1
2
3
4
5
2)无法删除压缩表上的列:

[email?protected]> alter table emp_comp drop column ename;alter table emp_comp drop column ename *第 1 行出现错误:ORA-39726: 不支持对压缩表执行添加/删除列操作123453)表压缩不支持在线段收缩(Online segment shrink) 4)不支持SecureFiles large objects 5)压缩表创建时默认设置PCT_FREE 为 0; 除非你手工指定。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读