set echo off select sysdate from dual; set pagesize 4000 set linesize 200 column SEGMENT_NAME format A20 column PARTITION_NAME format A14 column SEGMENT_TYPE format A12 column TABLESPACE_NAME format A15 column BYTES format 9999999 column BLOCKS format 99999 column Indice format A24 column KB format 9999,999 /* mostrar los segmentos empleados por el usuario */ SELECT * FROM USER_SEGMENTS ORDER BY SEGMENT_TYPE, SEGMENT_NAME; /* mostrar el total de espacio empleado por el usuario */ SELECT SUM(BYTES) FROM USER_EXTENTS KB; /* mostrar los segmentos empleados por el usuario y el tamaño en KB que ocupan */ SELECT SEGMENT_NAME, SEGMENT_TYPE, SUM(BYTES)/1024 "KB" FROM USER_SEGMENTS GROUP BY SEGMENT_NAME, SEGMENT_TYPE ORDER BY 2,1; /* mostrar los segmentos empleados por la tabla 'PIEZA' y el tamaño que ocupa */ SELECT SEGMENT_NAME, SEGMENT_TYPE, SUM(BYTES)/1024 "KB" FROM USER_SEGMENTS WHERE SEGMENT_NAME='PIEZA' GROUP BY SEGMENT_NAME, SEGMENT_TYPE ORDER BY 2,1; /* mostrar los índices empleados por el usuario */ SELECT INDEX_NAME FROM USER_INDEXES ORDER BY INDEX_NAME; /* mostrar los índices empleados en la BD de piezas */ SELECT INDEX_NAME FROM USER_INDEXES WHERE TABLE_NAME IN ('PROVEEDOR', 'SUMINISTRAR', 'PIEZA') ORDER BY 1; /* mostrar los índices asociados a las tablas de la BD de piezas y su tamaño en KB */ SELECT SEGMENT_NAME Indice, ROUND(SUM(BYTES)/1024) KB FROM USER_SEGMENTS A WHERE SEGMENT_TYPE = 'INDEX' AND SEGMENT_NAME IN (SELECT INDEX_NAME FROM USER_INDEXES WHERE TABLE_NAME IN ('PROVEEDOR', 'SUMINISTRAR', 'PIEZA')) GROUP BY SEGMENT_NAME ORDER BY Indice; /* mostrar los índices asociados a las tablas del usuario, junto con la tabla y el tamaño en bytes */ SELECT B.TABLE_NAME Tabla, A.SEGMENT_NAME Indice, SUM(A.BYTES) Bytes FROM USER_SEGMENTS A, (SELECT INDEX_NAME, TABLE_NAME FROM USER_INDEXES) B WHERE A.SEGMENT_TYPE = 'INDEX' AND A.SEGMENT_NAME = B.INDEX_NAME GROUP BY B.TABLE_NAME, A.SEGMENT_NAME ORDER BY Tabla, Indice; /* mostrar los índices asociados a las tablas de la BD de piezas, junto con la tabla y el tamaño en bytes */ SELECT B.TABLE_NAME Tabla, A.SEGMENT_NAME Indice, SUM(A.BYTES) Bytes FROM USER_SEGMENTS A, (SELECT INDEX_NAME, TABLE_NAME FROM USER_INDEXES WHERE TABLE_NAME IN ('PROVEEDOR', 'SUMINISTRAR', 'PIEZA')) B WHERE A.SEGMENT_TYPE = 'INDEX' AND A.SEGMENT_NAME = B.INDEX_NAME GROUP BY B.TABLE_NAME, A.SEGMENT_NAME ORDER BY Tabla, Indice; /* mostrar el espacio ocupado por un atributo de una tabla */ SELECT SUM(vsize('NombPieza')) Bytes FROM Pieza; /* mostrar la cuota de espacio asignada al usuario */ select * from USER_TS_QUOTAS; /* mostrar información de la cuenta del usuario */ select * from USER_USERS;