代码之家  ›  专栏  ›  技术社区  ›  UnDiUdin

如何查询数据库中Filestream文件组的文件名?

  •  1
  • UnDiUdin  · 技术社区  · 7 年前

    在系统中。文件组我看到了数据库中的所有文件组(main和filestram9),尤其是这个查询提供了文件组的名称:

    select  name from sys.filegroups where type = 'FD'
    

    我想获取该文件组的文件名,对于filestream文件组,文件名是存储filestream数据的磁盘上的物理路径,通过选择数据库属性,然后导航到文件部分,可以从management studio中看到该文件。

    1 回复  |  直到 7 年前
        1
  •  2
  •   Giuseppe Menegoz    7 年前

    下面的查询应该为您提供所需的值

    DECLARE @full_path VARCHAR(1000)
    SET @full_path = 
    (SELECT physical_name 
     FROM sys.master_files 
     WHERE name = 
     (SELECT  name 
      FROM sys.filegroups 
      WHERE type = 'FD'))
    
    SELECT LEFT(@full_path,LEN(@full_path) - 
    charindex('\',reverse(@full_path),1) + 1) [FileStreamPath]