Як я можу оцінити розміри таблиць у схемі (Oracle)


11

Я намагаюся оцінити розміри таблиць в рамках моєї схеми (в МБ). Ось що я маю досі:

SELECT table_name, owner, last_analyzed
FROM all_tables

Я досить новачок у SQL, тому не маю уявлення, як би мені це зробити.

Дякую.

Відповіді:


10

Подивіться на перегляд "dba_segments" (або user_segments, якщо у вас немає прав на dba). Наступний запит повинен дати вам те, що ви шукаєте:

select
  owner as "Schema"
  , segment_name as "Object Name"
  , segment_type as "Object Type"
  , round(bytes/1024/1024,2) as "Object Size (Mb)"
  , tablespace_name as "Tablespace"
from dba_segments
order by owner;

Привіт, Бенуа, це прекрасно дякую. Я переглянув поля таблиці, які я міг би використовувати, але мені не вдалося знайти "Власника" чи останні оновлені поля. До речі, я використовував перегляд user_segments. Чи буде ця інформація доступна у dba_segments?
Дієго R

Усі сегменти, показані в user_segments, належать обліковому запису, в якому ви використовували для входу, тому немає власного стовпця.
Бенуа

Правильний префікс для 1024/1024, Miа не M(див. Бінарний префікс )
Wernfried Domscheit
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.