sp_add_data_file_recover_suspect_db (Transact-SQL)
Ajoute un fichier de données à un groupe de fichiers lorsque la récupération d'une base de données ne peut se terminer en raison d'un espace insuffisant sur le groupe de fichiers (erreur 1105). Une fois le fichier ajouté, cette procédure stockée désactive le paramètre suspect et achève la récupération de la base de données. Les paramètres sont les mêmes que ceux de ALTER DATABASE database_name ADD FILE.
Conventions de la syntaxe de Transact-SQL
Syntaxe
sp_add_data_file_recover_suspect_db [ @dbName= ] 'database'
, [ @filegroup = ] 'filegroup_name'
, [ @name = ] 'logical_file_name'
, [ @filename= ] 'os_file_name'
, [ @size = ] 'size'
, [ @maxsize = ] 'max_size'
, [ @filegrowth = ] 'growth_increment'
Arguments
[ @dbName= ] **'**database '
Nom de la base de données. database est de type sysname et n'a pas de valeur par défaut.[ @filegroup= ] **'**filegroup_name '
Groupe de fichiers auquel le fichier doit être ajouté. filegroup_name est de type nvarchar(260), avec NULL comme valeur par défaut, qui indique le fichier primaire.[ @name= ] **'**logical_file_name '
Nom utilisé dans le SQL Server pour faire référence au fichier. Il doit être unique dans le serveur. logical_file_name est de type nvarchar(260) et n'a pas de valeur par défaut.[ @filename= ] **'**os_file_name '
Chemin d'accès et nom de fichier utilisé par le système d'exploitation pour le fichier. Le fichier doit résider sur une instance du moteur de base de données. os_file_name est de type nvarchar(260) et n'a pas de valeur par défaut.[ @size= ] **'**size '
Taille initiale du fichier. size est de type nvarchar(20), avec NULL comme valeur par défaut. Indiquez un nombre entier sans aucune décimale. Les indications Mo et Ko peuvent être utilisées pour indiquer qu'il s'agit de mégaoctets ou de kilo-octets. La valeur par défaut est Mo. La valeur minimale est 512 Ko. Si vous ne spécifiez pas l'argument size, la valeur par défaut est 1 Mo.[ @maxsize= ] **'**max_size '
Taille maximale que peut atteindre le fichier. max_size est de type nvarchar(20), avec NULL comme valeur par défaut. Indiquez un nombre entier sans aucune décimale. Les indications Mo et Ko peuvent être utilisées pour indiquer qu'il s'agit de mégaoctets ou de kilo-octets. La valeur par défaut est Mo.max_size n'est pas spécifié, la taille du fichier peut croître jusqu'à ce que le disque soit plein. Le journal des applications Microsoft Windows avertit l'administrateur lorsqu'un disque est sur le point d'être saturé.
[ @filegrowth= ] **'**growth_increment '
Quantité d'espace ajoutée au fichier chaque fois qu'un espace supplémentaire s'avère nécessaire. growth_increment est de type nvarchar(20), avec NULL comme valeur par défaut. La valeur 0 indique qu'aucun accroissement n'est autorisé. Indiquez un nombre entier sans aucune décimale. La valeur peut être exprimée en Mo, en Ko ou en pourcentage (%). Lorsque % est spécifié, la taille de l'incrément de croissance est le pourcentage spécifié de la taille du fichier au moment où l'incrémentation a lieu. Si un nombre est mentionné sans préciser Mo, Ko ou %, la valeur par défaut est Mo.Si growth_increment a la valeur NULL, la valeur par défaut est 10 % et la valeur minimale pour la taille est 64 Ko. La taille spécifiée est arrondie à la valeur multiple de 64 Ko la plus proche.
Valeurs des codes de retour
0 (succès) ou 1 (échec)
Jeux de résultats
Aucun
Autorisations
Les autorisations d'exécution sont accordées par défaut aux membres du rôle de serveur fixe sysadmin. Ces autorisations ne sont pas transférables.
Exemples
Dans l'exemple suivant, la base de données db1 a été déclarée suspecte au cours de sa récupération en raison d'un espace insuffisant (erreur 1105) dans le groupe de fichiers fg1.
USE master;
GO
EXEC sp_add_data_file_recover_suspect_db db1, fg1, file2,
'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\db1_file2.mdf', '1MB';