256.Sales details are being stored on a daily basis in the SALES_2007 table. A large amount of data is
added to the table daily. To save disk space, you issued the following command:
ALTER TABLE sales_2007 COMPRESS FOR ALL OPERATIONS;
What would be the outcome of this command?
A. It produces an error because data already exists in the table.
B. It produces an error because compression can be enabled at table creation only.
C. It compresses all data added or modified henceforth but the existing data in the table is not compressed immediately.
D. It immediately compresses all existing data as well as new data, resulting from either fresh additions or
modifications to existing data.
Answer: C
答案解析:
参考:http://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_7002.htm#SQLRF54485
When you enable table compression by specifying COMPRESS FOR OLTP, you enable OLTP table compression. Oracle Database compresses data during all DML operations on the table. This form of compression is recommended for OLTP environments.
Tables with COMPRESS FOR OLTP or NOCOMPRESS use the PCTFREE default value of 10, to maximize compress while still allowing for some future DML changes to the data, unless you override this default explicitly.
In earlier releases, OLTP table compression was enabled using COMPRESS FOR ALL OPERATIONS. This syntax has been deprecated.
COMPRESS
FOR
OLTP
,
then chained rows are not compressed unless the header for the row remains in the original block and all row columns are moved to another block
. If the row chaining results in leaving just the row header in the block and moving all of the row's columns to the next block, and they all fit in the next block, then the columns can be compressed.

为了节省磁盘空间,每天都会将大量的销售详情数据存储在Sales_2007表中。通过使用ALTER TABLE sales_2007 COMPRESS FOR ALL OPERATIONS命令来启用压缩,此操作会压缩之后所有新增或修改的数据,但不会立即压缩现有数据。
807

被折叠的 条评论
为什么被折叠?



