Dans SQL Server, les bases de données stockent leurs données et objets (tels que des tables, des vues, des procédures stockées, etc.) dans des fichiers. Lorsque vous créez une base de données à l'aide des options par défaut, un fichier de données et un fichier journal sont créés. Cependant, vous n'êtes pas limité à un seul de chaque fichier. Vous pouvez ajouter des fichiers de données (et des fichiers journaux) à une base de données ultérieurement si nécessaire.
Cet article contient des exemples d'utilisation de T-SQL pour ajouter un fichier de données à une base de données existante dans SQL Server.
Exemple
Voici un exemple d'ajout d'un seul fichier de données à une base de données existante :
USE maître ; GOALTER DATABASE Solutions ADD FILE ( NAME =Solutions_dat_2, FILENAME ='/var/opt/mssql/data/Solutions_dat_2.ndf', SIZE =10MB, MAXSIZE =100MB, FILEGROWTH =5% );GO
Cela ajoute un fichier de données avec un nom logique de Solutions_dat_2, et avec un chemin physique de /var/opt/mssql/data/Solutions_dat_2.ndf
(il s'agit de l'emplacement physique sur l'ordinateur).
Notez que cet exemple utilise des chemins de fichiers Linux/Mac. Si vous utilisez Windows, vous devrez utiliser des barres obliques inverses (\
) au lieu de barres obliques (/
).
Voici une explication des différents arguments utilisés dans cet exemple :
NAME
- Spécifie le nom de fichier logique. Il s'agit du nom logique utilisé dans une instance de SQL Server lors du référencement du fichier.
FILENAME
- Il s'agit du chemin physique complet vers le fichier (c'est-à-dire le chemin du système d'exploitation vers le fichier).
SIZE
- Spécifie la taille du fichier. Peut être spécifié en Ko, Mo, Go ou To.
MAXSIZE
- La taille de fichier maximale à laquelle le fichier peut atteindre. Peut être spécifié en Ko, Mo, Go, To ou ILLIMITÉ.
FILEGROWTH
- L'incrément de croissance automatique du fichier (la quantité d'espace ajoutée au fichier chaque fois qu'un nouvel espace est requis). Peut être spécifié en Ko, Mo, Go, To ou %.
La valeur par défaut est MB
(pour les mégaoctets).
Vérifier le résultat
Nous pouvons vérifier le résultat en exécutant la requête suivante :
UTILISER des solutions ; GOSELECT nom, nom_physique FROM sys.database_files ; ALLER
Résultat :
nom nom_physique --------------- ------------------------------ ---------Solutions /var/opt/mssql/data/Solutions.mdf Solutions_log /var/opt/mssql/data/Solutions_log.ldf Solutions_dat_2 /var/opt/mssql/data/Solutions_dat_2.ndfNous pouvons voir le nouveau fichier de données répertorié en plus du fichier de données d'origine (et du fichier journal).
Bien entendu, vous pouvez également utiliser l'astérisque (
*
) pour renvoyer toutes les colonnes si vous le souhaitez.Si vous constatez qu'un jour vous n'en avez plus besoin, vous pouvez toujours supprimer votre nouveau fichier de données.