none
SQL如何计算目录大小? RRS feed

  • 问题

  • 各位大侠:

    我想在存储过程里把某一目录的总大小赋给一个变量,该怎么计算这个目录的大小呢?

    比如这个目录:D:\MSSQL\DATA,谢谢。


    Thanks, Yoyo Yu
    2010年11月24日 2:56

答案

  • 用xp_cmdshell

     

    或者

    如果确定这个目录只存放了这台instance的数据库文件,可以通过查询select *from sys.master_files来计算.

    如果有别的文件,那就不准了


    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    • 已标记为答案 冰凌 2010年11月26日 1:23
    2010年11月24日 3:57
    版主
  • stswordman,

    我打算用VBS来计算,已经得到大小了,代码如下(计算D:\BackupDB\Data):

    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objFolder = objFSO.GetFolder("D:\BackupDB\Data")
    Wscript.Echo "Size:" & objFolder.Size


    Thanks, Yoyo Yu
    • 已标记为答案 冰凌 2010年11月26日 1:23
    2010年11月26日 1:22

全部回复

  • 用xp_cmdshell

     

    或者

    如果确定这个目录只存放了这台instance的数据库文件,可以通过查询select *from sys.master_files来计算.

    如果有别的文件,那就不准了


    有dba的职位吗(北京的),请联系我 stswordman#hotmail.com
    • 已标记为答案 冰凌 2010年11月26日 1:23
    2010年11月24日 3:57
    版主
  • Folder size should be bigger than total file size in the folder.
    2010年11月24日 4:29
  • stswordman,

    我打算用VBS来计算,已经得到大小了,代码如下(计算D:\BackupDB\Data):

    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set objFolder = objFSO.GetFolder("D:\BackupDB\Data")
    Wscript.Echo "Size:" & objFolder.Size


    Thanks, Yoyo Yu
    • 已标记为答案 冰凌 2010年11月26日 1:23
    2010年11月26日 1:22