--Database file logical ids, physical location, sizes and growth factors.
select ltrim(+'['+m.name+']')
as database_name, ltrim(rtrim(substring(s.name, 1,200))) as logical_file_name, ltrim(rtrim(s.filename)) as physical_file_path, case
when s.maxsize = -1 then convert(varchar(200), s.maxsize)+space(1)+'[Unlimited File Growth]' else convert(varchar(200), convert(decimal(18,2), s.maxsize/1024*8))+space(1)+'(MB)' end as maximum_allowable_size, case when convert(varchar(200),convert(decimal(18,2),s.size*8/1024)) < = '0' then
'0' else convert(varchar(200),convert(decimal(18,2),s.size*8/1024))+
space(1)+'(MB)' end as current_size, case
when s.status & 0x100000 = 0x100000 then ( select
convert(varchar(200), cast(growth as varchar(10)))+'%' from sysfiles where fileid = s.fileid) else cast(convert(varchar(200), s.growth*8/1024) as
varchar(10))+'(MB)' end as growth_factor, case
when s.status & 0x100000 = 0x100000 then 'Autogrow' else 'Fixed Growth' end as
status from master .. sysaltfiles s inner
join master .. sysdatabases m on m.dbid = s.dbid group
by m.name,s.fileid,s.name,s.filename, s.maxsize,s.size,s.growth,s.status order
by 1
