пятница, 14 ноября 2014 г.

Список файлов БД с доп информацией

Скрипт возвращает список файлов в БД, их размер и используемый размер

Спасибо Юлие Поповой за этот чудесный срипт


with cte as
  ( select name, physical_name, fileproperty( name, 'SpaceUsed' ) / 128.0 as space_used
         , size / 128.0 as file_size, max_size / 128.0 as max_size, [type], data_space_id, [file_id]
      from sys.database_files )
select name, physical_name
     , case
         when space_used < 512    then ltrim( str( space_used, 15, 2 ) ) + ' Mb'
         when space_used < 524288 then ltrim( str( space_used / 1024, 15, 2 ) ) + ' Gb'
                                  else ltrim( str( space_used / 1048576, 15, 2 ) ) + ' Tb'
         end as space_used
     , case
         when file_size < 512    then ltrim( str( file_size, 15, 2 ) ) + ' Mb'
         when file_size < 524288 then ltrim( str( file_size / 1024, 15, 2 ) ) + ' Gb'
                                 else ltrim( str( file_size / 1048576, 15, 2 ) ) + ' Tb'
         end as file_size
     , case
         when max_size < 512    then ltrim( str( max_size, 15, 2 ) ) + ' Mb'
         when max_size < 524288 then ltrim( str( max_size / 1024, 15, 2 ) ) + ' Gb'
                                 else ltrim( str( max_size / 1048576, 15, 2 ) ) + ' Tb'
         end as max_size
     , ltrim( str( 100 * space_used / file_size, 15, 2 ) ) + ' %' as fullness
  from cte
  order by [type], data_space_id, [file_id];
go


Комментариев нет:

Отправить комментарий