笔记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