SQL> alter table test modify lob(address) (storage (buffer_pool keep) nocache);
Table altered.
SQL> select table_name,cache,buffer_pool from user_TABLES;
TABLE_NAME CACHE BUFFER_
------------------------------ ----- -------
TEST N DEFAULT
SQL> select segment_name,segment_type,buffer_pool from user_segments;
SEGMENT_NAME
--------------------------------------------------------------------------------
SEGMENT_TYPE BUFFER_
------------------ -------
TEST
TABLE DEFAULT
SYS_IL0000123006C00002$$
LOBINDEX KEEP
SYS_LOB0000123006C00002$$
LOBSEGMENT KEEP
SQL> select column_name,segment_name from user_lobs;
COLUMN_NAME
--------------------------------------------------------------------------------
SEGMENT_NAME
------------------------------
ADDRESS
SYS_LOB0000123006C00002$$
SQL>
Thus you can see the lob segment SYS_LOB0000123006C00002$$ is mapped to clob column ad
dress and is using
keep buffer pool as expected.
User_objects will display results for object as a whole not for individual columns.
See below, we need to alter the complete table to use keep buffer_pool and user_tables will then display results as expected.
SQL> alter table test storage (buffer_pool keep);
Table altered.
SQL> select table_name,cache,buffer_pool from user_TABLES;
TABLE_NAME CACHE BUFFER_
------------------------------ ----- -------
TEST N KEEP
SQL>
责任编辑:小草