方式一:用于查询all数据库,适用于SQL2005及以上版本。
USE [Master]
GO
/****** 对象: Table [dbo].[Master] 脚本日期: 06/29/2009 11:11:01 ******/
--SA登录
select a.[name] 逻辑文件名
, casewhencharindex('log',b.[name])>= 1
then'数据库日志文件->'+b.[name]
else'数据库主文件->'+b.[name] end物理文件名
, b.physical_name 物理路径
from sys.databases a
join sys.master_files b ona.database_id=b.database_id
方式二:用于查询all数据库,适用于SQL2000及以上版本。
/****** 对象: Table [dbo].[Master] 脚本日期: 10/10/2010 10:11:01 ******/
--SA登录
select
[dbid] 数据库ID
,CASE WHENfileid= 1 THEN'主数据'
WHENfileid= 2 THEN'主日志'
WHENfileidbetween 2 and65536 THEN'日志文件'+LTRIM(fileid-2)
END文件类型
,name 逻辑文件名
,[filename] 物理路径
,[status] 数据库状态
,size 数据库大小
,maxsize 数据库最大值
,growth [文件增长值/比率]
from sys.sysaltfiles
方式三:用于查询all数据库,适用于SQL2005及以上版本。
/****** 对象: Table [dbo].[Master] 脚本日期: 10/23/2010 10:11:01 ******/
--SA登录
select
database_id 数据库ID
,CASE WHENFILE_ID= 1 THEN'主数据'
WHENFILE_ID= 2 THEN'主日志'
WHENFILE_IDbetween 2 and65536 THEN'日志文件'+LTRIM(FILE_ID-2)
WHENFILE_ID=65537 THEN'文件流'
END文件类型
,name 逻辑文件名
,physical_name 物理路径
,state_desc 数据库状态
,size 数据库大小
,max_size 数据库最大值
,CASE WHENis_percent_growth= 1
thenLTRIM(growth)+'%'
elseLTRIM(growth)+'KB'END文件增长值
from sys.master_files
注:方式二和三中的相关参数定义
--max_size 数据库最大值参数释义: 0 = 不允许增长; -1 = 文件将一直增长到磁盘变满为止; 268435456 = 日志文件将增长到最大大小 2 TB。 --如果升级的数据库没有限制日志文件大小,则日志文件的最大大小将报告为 -1。