sys.database_files (Transact-SQL)

Contient une ligne par fichier d'une base de données telle qu'elle est stockée dans la base de données. C'est une vue par base de données.

Nom de colonne

Type de données

Description

file_id

int

ID du fichier dans la base de données

file_guid

uniqueidentifier

GUID du fichier

NULL = la base de données a été mise à niveau à partir d'une version antérieure de SQL Server.

type

tinyint

Type de fichier :

0 = Lignes (inclut des fichiers de catalogues de texte intégral qui sont mis à niveau ou créés dans SQL Server 2008.)

1 = Journal

2 = FILESTREAM

3 = Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

4 = Texte intégral (le catalogue de texte intégral antérieur à SQL Server 2008; les catalogues de texte intégral qui sont mis à niveau ou créés dans SQL Server 2008 signaleront un type de fichier 0.)

type_desc

nvarchar(60)

Description du type de fichier :

ROWS (inclut des fichiers de catalogues de texte intégral qui sont mis à niveau ou créés dans SQL Server 2008.)

LOG

FILESTREAM

FULLTEXT (catalogues de texte intégral antérieurs à SQL Server 2008.)

data_space_id

int

La valeur peut être supérieure ou égale à 0. La valeur 0 représente le fichier journal de la base de données et une valeur supérieure à 0 représente l'ID du groupe de fichiers où ce fichier de données est stocké.

name

sysname

Nom logique du fichier dans la base de données

physical_name

nvarchar(260)

Nom de fichier du système d'exploitation

state

tinyint

État du fichier :

0 = ONLINE

1 = RESTORING

2 = RECOVERING

3 = RECOVERY_PENDING

4 = SUSPECT

5 = Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

6 = OFFLINE

7 = DEFUNCT

state_desc

nvarchar(60)

Description de l'état du fichier :

ONLINE

RESTORING

RECOVERING

RECOVERY_PENDING

SUSPECT

OFFLINE

DEFUNCT

Pour plus d'informations, consultez États des fichiers.

size

int

Taille actuelle du fichier (en pages de 8 Ko)

0 = Non applicable

Pour une capture instantanée de base de données, size reflète l'espace maximal que la capture instantanée ne peut jamais dépasser pour le fichier.

taille_max

int

Taille maximale du fichier (en pages de 8 Ko) :

0 = Aucune croissance n'est autorisée.

-1 = Le fichier croîtra jusqu'à ce que le disque soit plein.

268435456 = Le fichier journal croîtra jusqu'à une taille maximum de 2 To.

RemarqueRemarque
Les bases de données qui sont mises à niveau avec une taille de fichier journal illimitée indiqueront -1 comme taille maximale du fichier journal.

growth

int

0 = Le fichier est de taille fixe et ne croîtra pas.

>0 = Le fichier croîtra automatiquement.

Si is_percent_growth = 0, l'incrément de croissance est en unités de pages de 8 Ko, arrondies aux 64 kilo-octets les plus proches.

If is_percent_growth = 1, l'incrément de croissance est exprimé en pourcentage entier.

is_media_read_only

bit

1 = Le fichier se trouve sur un support en lecture seule.

0 = Le fichier se trouve sur un support en lecture-écriture.

is_read_only

bit

1 = Le fichier est marqué en lecture seule.

0 = Le fichier est marqué en lecture-écriture.

is_sparse

bit

1 = Le fichier est un fichier fragmenté.

0 = Le fichier n'est pas un fichier fragmenté.

Pour plus d'informations, consultez Tailles des fichiers partiellement alloués dans les instantanés de bases de données.

is_percent_growth

bit

1 = La croissance du fichier est exprimée en pourcentage.

0 = Croissance absolue de la taille en pages.

is_name_reserved

bit

1 = Le nom du fichier supprimé (name ou physical_name) ne peut être réutilisé qu'après la prochaine sauvegarde du journal. Lorsque des fichiers sont supprimés d'une base de données, les noms logiques restent réservés jusqu'à la prochaine sauvegarde du journal. Cette colonne concerne uniquement le mode de restauration complète et le mode de récupération utilisant les journaux de transactions.

create_lsn

numeric(25,0)

Numéro séquentiel dans le journal auquel le fichier a été créé.

drop_lsn

numeric(25,0)

Numéro de séquence d'enregistrement auquel le fichier a été supprimé.

0 = Le nom de fichier n'est pas disponible pour réutilisation.

read_only_lsn

numeric(25,0)

Numéro de séquence d'enregistrement auquel le groupe de fichiers contenant le fichier est passé du mode lecture-écriture au mode lecture seule (la modification la plus récente).

read_write_lsn

numeric(25,0)

Numéro de séquence d'enregistrement auquel le groupe de fichiers contenant le fichier est passé du mode lecture seule au mode lecture-écriture (la modification la plus récente).

differential_base_lsn

numeric(25,0)

Base pour les sauvegardes différentielles. Les extensions de données modifiées après ce numéro de séquence d'enregistrement seront incluses dans une sauvegarde différentielle.

differential_base_guid

uniqueidentifier

Identificateur unique de la sauvegarde de base sur laquelle sera basée une sauvegarde différentielle.

differential_base_time

datetime

Heure correspondant à differential_base_lsn.

redo_start_lsn

numeric(25,0)

Numéro de séquence d'enregistrement auquel la restauration suivante doit commencer.

A pour valeur NULL sauf si state a pour valeur RESTORING ou RECOVERY_PENDING.

redo_start_fork_guid

uniqueidentifier

Identificateur unique de la fourchette de récupération. L'identificateur first_fork_guid de la sauvegarde de journal suivante restaurée doit correspondre à cette valeur. Cela représente l'état actuel du fichier.

redo_target_lsn

numeric(25,0)

Numéro de séquence d'enregistrement auquel la restauration en ligne sur ce fichier peut s'arrêter.

La valeur est NULL sauf si state = RESTORING ou si state = RECOVERY_PENDING.

redo_target_fork_guid

uniqueidentifier

Fourchette de récupération dans laquelle le fichier peut être récupéré. Associé à redo_target_lsn.

backup_lsn

numeric(25,0)

Numéro de séquence d'enregistrement des données ou de la sauvegarde différentielle les plus récents du fichier.

Notes

Lorsque vous supprimez ou reconstruisez des index volumineux ou lorsque vous supprimez ou tronquez des tables volumineuses, le moteur de base de données diffère les désallocations des pages actives et de leurs blocs associés jusqu'à ce que la transaction soit validée. Les opérations de suppression différées ne libèrent pas d'espace alloué immédiatement. Par conséquent, les valeurs retournées par sys.database_files immédiatement après avoir supprimé ou tronqué un objet volumineux ne reflètent pas l'espace disque réel. Pour plus d'informations sur les allocations différées, consultez Suppression et reconstruction d'objets volumineux.

Autorisations

Nécessite l'appartenance en tant que membre au rôle public. Pour plus d'informations, consultez Configuration de la visibilité des métadonnées.