sys.dm_os_volume_stats (Transact-SQL)

Retourne les informations relatives au volume du système d'exploitation (répertoire) sur lequel les bases de données et fichiers spécifiés sont stockés dans SQL Server 2012. Utilisez cette fonction de gestion dynamique pour vérifier les attributs du lecteur de disque physique ou retourner les informations relatives à l'espace disque disponible pour le répertoire.

Icône Lien de rubrique Conventions de la syntaxe Transact-SQL

Syntaxe

sys.dm_os_volumne_stats (database_id, file_id)

Arguments

  • database_id
    ID de la base de données. database_id est de type int et n'a pas de valeur par défaut. Ne peut pas avoir la valeur NULL.

  • file_id
    ID du fichier. file_id est de type int et n'a pas de valeur par défaut. Ne peut pas avoir la valeur NULL.

Table retournée

Column

Type de données

Description

database_id

int

ID de la base de données. Ne peut pas être NULL.

file_id

int

ID du fichier. Ne peut pas être NULL.

volume_mount_point

nvarchar(512)

Point de montage à la racine duquel le volume est attaché. Peut retourner une chaîne vide.

volume_id

nvarchar(512)

Identificateur du volume du système d'exploitation. Peut retourner une chaîne vide.

logical_volume_name

nvarchar(512)

Nom du volume logique. Peut retourner une chaîne vide.

file_system_type

nvarchar(512)

Type du volume du système de fichiers (par exemple, NTFS, FAT, RAW). Peut retourner une chaîne vide.

total_bytes

bigint

Taille totale (en octets) du volume. Ne peut pas être NULL.

available_bytes

bigint

Espace disponible sur le volume. Ne peut pas être NULL.

supports_compression

bit

Indique si le volume prend en charge la compression du système d'exploitation. Ne peut pas être NULL.

supports_alternate_streams

bit

Indique si le volume prend en charge les flux de remplacement. Ne peut pas être NULL.

supports_sparse_files

bit

Indique si le volume prend en charge les fichiers partiellement alloués. Ne peut pas être NULL.

is_read_only

bit

Indique si le volume est actuellement marqué comme étant en lecture seule. Ne peut pas être NULL.

is_compressed

bit

Indique si ce volume est actuellement compressé. Ne peut pas être NULL.

Sécurité

Autorisations

Nécessite l'autorisation VIEW SERVER STATE.

Exemples

A.Retour de l'espace total et de l'espace disponible pour tous les fichiers de base de données

L'exemple suivant retourne l'espace total et l'espace disponible (en octets) pour tous les fichiers de base de données dans l'instance de SQL Server.

SELECT f.database_id, f.file_id, volume_mount_point, total_bytes, available_bytes
FROM sys.master_files AS f
CROSS APPLY sys.dm_os_volume_stats(f.database_id, f.file_id);

B.Retour de l'espace total et de l'espace disponible pour la base de donnée actuelle

L'exemple suivant retourne l'espace total et l'espace disponible (en octets) pour les fichiers de base de données dans la base de données actuelle.

SELECT database_id, f.file_id, volume_mount_point, total_bytes, available_bytes
FROM sys.database_files AS f
CROSS APPLY sys.dm_os_volume_stats(DB_ID(f.name), f.file_id);

Voir aussi

Référence

sys.master_files (Transact-SQL)

sys.database_files (Transact-SQL)