Partager via


Vue d'ensemble des fichiers et des groupes de fichiers

En définissant et utilisant des groupes de fichiers supplémentaires, vous pouvez améliorer les performances des bases de données et mieux gérer la façon dont vos objets de base de données sont sauvegardés et restaurés. Par exemple, vous pouvez définir des groupes de fichiers sur des disques physiques différents afin de réduire le temps d'accès. Si vous associez tous les objets de base de données d'un schéma à un groupe de fichiers particulier, vous pouvez ensuite sauvegarder et restaurer ces objets en même temps. Pour plus d'informations sur les groupes de fichiers, consultez la rubrique suivante sur le site Web Microsoft : Fichiers et groupes de fichiers de base de données physique (page éventuellement en anglais).

Notes

Si vous travaillez avec un projet d'application de couche Données (DAC), vous ne pouvez pas définir de fichiers ou de groupes de fichiers. Vous devez utiliser un projet de base de données .dbschema si vous voulez contrôler les fichiers et les groupes de fichiers de votre base de données.

Comportement

Avant de définir des fichiers et des groupes de fichiers dans votre projet de base de données, vous devez prendre en considération les types de comportements suivants de manière à pouvoir faire la distinction entre comportement attendu et problèmes inattendus.

Importation de schémas

Lorsque vous importez un schéma à partir d'une base de données existante, vous importez également les définitions de fichier et de groupe de fichiers de cette base de données.

Comparaison de schémas

En comparant des schémas, vous pouvez déterminer si des objets du même nom ont été créés dans des groupes de fichiers qui ont des noms différents. Vous pouvez également déterminer si un groupe de fichiers a été ajouté ou supprimé dans la source mais pas dans la cible. Pour plus d'informations sur la façon de comparer des schémas, consultez Comment : comparer des schémas de base de données.

Génération et déploiement de projets de base de données

Les fichiers et groupes de fichiers eux-mêmes ne peuvent pas être spécifiques à des configurations de build particulières. Toutefois, vous pouvez définir des fichiers sous forme de variables MSBuild qui peuvent être spécifiques à une configuration. Cette approche vous permet, par exemple, d'utiliser des chemins d'accès et des noms de fichier dans votre environnement de développement isolé qui diffèrent de ceux de votre serveur intermédiaire.

Suppression de groupes de fichiers, de fichiers et de fichiers journaux

Si vous supprimez un groupe de fichiers d'un projet de base de données, vous pouvez déployer cette modification vers une nouvelle base de données, mais cette modification est ignorée si vous effectuez le déploiement vers une base de données existante. Lorsque vous supprimez un groupe de fichiers d'un projet de base de données, vous supprimez également tous les fichiers qui lui étaient associés. Tous les objets du projet de base de données qui se trouvaient dans le groupe de fichiers que vous avez supprimé apparaissent en état d'erreur. Pour résoudre les erreurs, vous devez recréer le groupe de fichiers ou modifier les définitions de ces objets pour les associer à un autre groupe de fichiers. Dans ces circonstances, vous ne pouvez pas déployer votre projet de base de données tant que vous n'avez pas résolu les erreurs.

Vous ne pouvez pas supprimer le groupe de fichiers principal. Il faut toujours qu'un groupe de fichiers par défaut soit spécifié. Si vous supprimez le seul fichier d'un groupe de fichiers, un avertissement apparaît dans la fenêtre Liste d'erreurs pour indiquer que la définition de groupe de fichiers est incomplète. De plus, vous ne pouvez pas supprimer le seul fichier journal d'un projet de base de données. Un projet de base de données doit toujours comporter au moins un fichier journal défini.

Limitations

Vous pouvez rencontrer les limitations suivantes lorsque vous déployez des modifications vers des groupes de fichiers, renommez des groupes de fichiers et définissez des objets de base de données dans des groupes de fichiers en lecture seule.

Déploiement de modifications

Si vous ajoutez un groupe de fichiers dans un projet de base de données, vous pouvez déployer cette modification vers une base de données nouvelle ou existante. Si vous supprimez un groupe de fichiers ou modifiez ses fichiers ou propriétés, vous pouvez déployer ces modifications vers une nouvelle base de données. Toutefois, les suppressions et modifications de groupes de fichiers sont ignorées si vous déployez le projet vers une base de données existante. Si le nom d'un groupe de fichiers du projet de base de données correspond au nom d'un groupe de fichiers sur la cible, les groupes de fichiers sont supposés être les mêmes.

Si vous renommez un groupe de fichiers, puis que vous le déployez vers une base de données existante, un groupe de fichiers portant le nouveau nom est créé et le groupe de fichiers existant ne change pas.

Changement de nom des groupes de fichiers dans les définitions d'objet

Vous pouvez utiliser la refactorisation de base de données pour mettre à jour les noms de groupes de fichiers dans les définitions des objets de base de données. Pour plus d'informations, consultez Renommer toutes les références à un objet de base de données.

Définition d'objets dans des groupes de fichiers en lecture seule

Même si vous activez la case à cocher Lecture seule pour un groupe de fichiers, vous pouvez encore définir des objets sur ce groupe dans le projet de base de données. Toutefois, si vous essayez de déployer ces modifications vers une base de données existante, l'opération échouera avec une erreur. Lorsque vous déployez ces modifications vers une nouvelle base de données, les objets sont créés comme si la case à cocher Lecture seule était désactivée. Une fois les objets créés, le groupe de fichiers est défini en lecture seule dans la base de données.

Utilisation d'applications de couche Données

Si vous créez un projet d'application de couche Données, vous ne pouvez pas définir de fichiers ou de groupes de fichiers pour ce projet. De plus, si vous convertissez un projet de base de données en projet DAC, tous les fichiers et groupes de fichiers définis dans ce projet de base de données vont générer des erreurs. Pour plus d'informations, consultez Conversion entre des projets d'application de couche Données et des projets de base de données.

Voir aussi

Tâches

Comment : spécifier des scripts de prédéploiement ou de post-déploiement

Comment : ajouter des fichiers et des groupes de fichiers

Concepts

Vue d'ensemble des paramètres de projet de base de données