Show table space : dbms_space « System Packages « Oracle PL/SQL Tutorial






SQL>
SQL> create or replace procedure show_space( p_segname in varchar2,
  2    p_owner   in varchar2 default user,
  3    p_type    in varchar2 default 'TABLE',
  4    p_partition in varchar2 default NULL )
  5  as
  6      l_free_blks                 number;
  7
  8      l_total_blocks              number;
  9      l_total_bytes               number;
 10      l_unused_blocks             number;
 11      l_unused_bytes              number;
 12      l_LastUsedExtFileId         number;
 13      l_LastUsedExtBlockId        number;
 14      l_last_used_block           number;
 15  begin
 16      dbms_space.free_blocks( segment_owner     => p_owner,
 17        segment_name      => p_segname,
 18        segment_type      => p_type,
 19        partition_name    => p_partition,
 20        freelist_group_id => 0,
 21        free_blks         => l_free_blks );
 22
 23      dbms_space.unused_space( segment_owner     => p_owner,
 24        segment_name      => p_segname,
 25        segment_type      => p_type,
 26        partition_name    => p_partition,
 27        total_blocks      => l_total_blocks,
 28        total_bytes       => l_total_bytes,
 29        unused_blocks     => l_unused_blocks,
 30        unused_bytes      => l_unused_bytes,
 31        last_used_extent_file_id => l_LastUsedExtFileId,
 32        last_used_extent_block_id => l_LastUsedExtBlockId,
 33        last_used_block => l_last_used_block );
 34
 35      dbms_output.put_line( 'Free Blocks');
 36      dbms_output.put_line( l_free_blks );
 37      dbms_output.put_line( 'Total Blocks');
 38      dbms_output.put_line( l_total_blocks );
 39      dbms_output.put_line( 'Total Bytes');
 40      dbms_output.put_line( l_total_bytes );
 41      dbms_output.put_line( 'Unused Blocks');
 42      dbms_output.put_line( l_unused_blocks );
 43      dbms_output.put_line( 'Unused Bytes');
 44      dbms_output.put_line( l_unused_bytes );
 45      dbms_output.put_line( 'Last Used Ext FileId');
 46      dbms_output.put_line( l_LastUsedExtFileId );
 47      dbms_output.put_line( 'Last Used Ext BlockId');
 48      dbms_output.put_line( l_LastUsedExtBlockId );
 49      dbms_output.put_line( 'Last Used Block');
 50      dbms_output.put_line( l_last_used_block );
 51  end;
 52  /

Procedure created.

SQL>








31.25.dbms_space
31.25.1.Use dbms_space.free_blocks and dbms_space.unused_space
31.25.2.Show table space