No SQL Server, você pode consultar o
sys.filegroups
exibição do catálogo do sistema para retornar uma lista de todos os grupos de arquivos do banco de dados atual. Essa exibição contém uma linha para cada espaço de dados que é um grupo de arquivos. Em outras palavras, seus resultados contêm uma linha por grupo de arquivos.
Exemplo 1 – Usando o banco de dados WideWorldImporters
Aqui está um exemplo para demonstrar. Este exemplo usa o banco de dados de exemplo WideWorldImporters fornecido pela Microsoft.
USE WideWorldImporters;SELECT data_space_id,name,type_descFROM sys.filegroups;
Resultado:
+-----------------+-------------------+------------ -------------------------+| data_space_id | nome | type_desc ||---+-------------------+--------- ------------------------|| 1 | PRINCIPAL | ROWS_FILEGROUP || 2 | DADOS DO USUÁRIO | ROWS_FILEGROUP || 3 | WWI_InMemory_Data | MEMORY_OPTIMIZED_DATA_FILEGROUP |+-----------------+-------------------+--------- ------------------------+
Exemplo 2 – Alternar bancos de dados
Neste exemplo, mudo para um banco de dados diferente e executo a consulta novamente.
USE Music;SELECT data_space_id,name,type_descFROM sys.filegroups;
Resultado:
+-----------------+---------+----------------+| data_space_id | nome | type_desc ||-----------------+---------+----------------|| 1 | PRINCIPAL | ROWS_FILEGROUP |+-----------------+---------+----------------+
Este banco de dados (chamado Música) possui apenas um grupo de arquivos.
Exemplo 3 – Retornar todas as colunas
Nos exemplos anteriores, selecionei colunas específicas para retornar. Neste exemplo, eu uso um asterisco (*
) para devolvê-los todos.
SELECT * FROM sys.filegroups;
Resultado (usando saída vertical):
nome | PRIMARYdata_space_id | 1tipo | FGtype_desc | ROWS_FILEGROUPis_default | 1is_system | 0filegroup_guid | NULLlog_filegroup_id | NULLis_read_only | 0is_autogrow_all_files | 0
Nesse caso, usei a saída vertical para exibir os resultados verticalmente (para que você não seja forçado a rolar horizontalmente).
Exemplo 4 – Incluir o caminho do arquivo
Você pode participar dossys.database_files
view para retornar o caminho do arquivo físico.
SELECTdf.name AS [Nome do arquivo DB], df.size/128 AS [Tamanho do arquivo (MB)], fg.name AS [Nome do grupo de arquivos], df.physical_name AS [Caminho do arquivo]FROM sys.database_files AS dfINNER JOIN sys.filegroups AS fgON df.data_space_id =fg.data_space_id;
Resultado (usando saída vertical):
Nome do arquivo DB | Tamanho do arquivo de música (MB) | 8Nome do Grupo de Arquivos | PRIMARYCaminho do arquivo | /var/opt/mssql/data/Music.mdf
O grupo de arquivos PRIMARY é o grupo de arquivos padrão no qual residem o arquivo de dados e o arquivo de log, a menos que você especifique um grupo de arquivos diferente. Consulte Como adicionar um grupo de arquivos a um banco de dados SQL Server para criar um novo grupo de arquivos.