只適用於非ASSM:
create or replace
procedure show_space
( p_segname in varchar
p_owner in varchar
p_type in varchar
as
l_free_blks number;
l_total_blocks number;
l_total_bytes number;
l_unused_blocks number;
l_unused_bytes number;
l_LastUsedExtFileId number;
l_LastUsedExtBlockId number;
l_LAST_USED_BLOCK number;
procedure p( p_label in varchar
is
begin
dbms_output
p_num );
end;
begin
dbms_space
( segment_owner => p_owner
segment_name => p_segname
segment_type => p_type
freelist_group_id =>
free_blks => l_free_blks );
dbms_space
( segment_owner => p_owner
segment_name => p_segname
segment_type => p_type
total_blocks => l_total_blocks
total_bytes => l_total_bytes
unused_blocks => l_unused_blocks
unused_bytes => l_unused_bytes
LAST_USED_EXTENT_FILE_ID => l_LastUsedExtFileId
LAST_USED_EXTENT_BLOCK_ID => l_LastUsedExtBlockId
LAST_USED_BLOCK => l_LAST_USED_BLOCK );
p(
p(
p(
p(
p(
p(
p(
p(
end;
/
例
SQL> create table donny(id char(
表已創建
SQL> set serveroutput on
SQL> exec show_space(
Free Blocks
Total Blocks
Total Bytes
Unused Blocks
Unused Bytes
Last Used Ext FileId
Last Used Ext BlockId
Last Used Block
PL/SQL 過程已成功完成
SQL>
From:http://tw.wingwit.com/Article/program/Oracle/201311/18292.html