笔记114 得到SQLSERVER 2005 数据库的当前数据库中的数据文件所在磁盘的剩余空间(2)

 笔记114 得到SQLSERVER 2005 数据库的当前数据库中的数据文件所在磁盘的剩余空间(2)

 1 --得到SQLSERVER 2005 数据库的当前数据库中的数据文件所在磁盘的剩余空间(2)
 2 exec master..xp_fixeddrives
 3 exec master..xp_availablemedia 2
 4 exec xp_availablemedia 2
 5 
 6 --得到SQL中的各种目录  
 7 declare   @path   varchar(8000)  
 8    
 9 --得到当前数据库的数据文件路径
10 --指定数据库,直接select filename from <your_db_name>.dbo.sysfiles即可 
11 --sysfiles           每个数据库             文件  因为sysfiles 表属于每个数据库所以要指定GPOSDB.dbo.sysfiles
12 select    filename  from   sysfiles  --呢句的结果: C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\master.mdf
13                                                       --C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\mastlog.ldf
14                              
15 select   @path=rtrim(reverse(filename))   from   GPOSDB.dbo.sysfiles   --呢句的结果把上面的结果的字符串调转fdm.retsam\ATAD\LQSSM\1.LQSSM\revreS LQS tfosorciM\seliF margorP\:C
16 select   @path=reverse(substring(@path,charindex('\',@path),8000))   --CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置     SELECT charindex('\',@path) 返回12
17 select   数据文件目录=@path  
18 --   
19 ----得到SQL安装时设置的数据文件路径  
20 select   @path=rtrim(reverse(filename))   from   master..sysfiles   where   name='master'  
21 select   @path=reverse(substring(@path,charindex('\',@path),8000))  
22 select   SQL数据文件目录=@path  
23 SELECT * FROM sys.sysfiles
24 ----   
25 ------根据安装路径得到默认的备份目录:  
26 select   @path=rtrim(reverse(filename))   from   master..sysfiles   where   name='master'  
27 select   @path=substring(@path,charindex('\',@path)+1,8000),  --substring加了1之后 C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\ 变成了C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA
28 @path=reverse(substring(@path,charindex('\',@path),8000))+'BACKUP\'   --去咗DATA变成  C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\加上BACKUP\
29 select   SQL默认备份目录=@path  

 

posted @ 2013-08-03 22:34 桦仔 阅读(...) 评论(...) 编辑 收藏