oracle如何估算即将创建的索引大小

可以用以下存储过程来实现:

SQL>set serveroutput on
SQL>declare
l_index_ddl varchar(1000);
l_used_bytes number
l_allocated_bytes number;
begin
dbms_space.create_index_cost(
ddl =>' create index ids_t on user(userid) ',
used_bytes=>l_used_bytes
alloc_bytes =>l_allocated_bytes);
dbms_ouput.put_line('used =' ||    'bytes' 
||'  allocated= ' || l_allocated_bytes || 'bytes');
end;
/
实际运行例子如下:


说明:  
used_bytes 给出索引数据实际表现的字节数。
allocated 是当实际创建索引时在表空间中实际占用的字节数。

请使用浏览器的分享功能分享到微信等