sp_add_data_file_recover_suspect_db (Transact-SQL)

S’applique à :SQL Server

Ajoute un fichier de données à un groupe de fichiers lorsque la récupération ne peut pas se terminer sur une base de données 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 pour ALTER DATABASE <database_name> ADD FILE.

Conventions de la syntaxe Transact-SQL

Syntaxe

sp_add_data_file_recover_suspect_db [ @dbName = ] 'database'
    , [ @filegroup = ] N'filegroup_name'
    , [ @name = ] N'logical_file_name'
    , [ @filename = ] N'os_file_name'
    , [ @size = ] N'size'
    , [ @maxsize = ] N'max_size'
    , [ @filegrowth = ] N'growth_increment'
[ ; ]

Arguments

[ @dbName = ] 'database'

Nom de la base de données. @dbName est sysname, sans valeur par défaut.

[ @filegroup = ] N’filegroup_name'

Groupe de fichiers auquel vous ajoutez le fichier. @filegroup est nvarchar(260), avec une valeur par défaut , NULLqui indique le fichier principal.

[ @name = ] N’logical_file_name'

Nom utilisé dans SQL Server pour référencer le fichier. Il doit être unique dans le serveur. @name est nvarchar(260), sans valeur par défaut.

[ @filename = ] N’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. @filename est nvarchar(260), sans valeur par défaut.

[ @size = ] N’size'

Taille initiale du fichier. @size est nvarchar(20), avec la valeur par défaut NULL. Spécifiez un nombre entier ; n’incluez pas de décimale. Les MB suffixes KB et les suffixes peuvent être utilisés pour spécifier des mégaoctets ou des kilo-octets. Par défaut, il s’agit de MB. La valeur minimale est 512 Ko. Si @size n’est pas spécifié, la valeur par défaut est 1 Mo.

[ @maxsize = ] N’max_size'

Taille maximale à laquelle le fichier peut croître. @maxsize est nvarchar(20), avec la valeur par défaut NULL. Spécifiez un nombre entier ; n’incluez pas de décimale. Les MB suffixes KB et les suffixes peuvent être utilisés pour spécifier des mégaoctets ou des kilo-octets. Par défaut, il s’agit de MB.

Si @maxsize n’est pas spécifié, le fichier augmente jusqu’à ce que le disque soit plein. Le journal des applications Microsoft Windows avertit un administrateur lorsqu’un disque est sur le point de devenir complet.

[ @filegrowth = ] N’growth_increment'

Quantité d’espace ajoutée au fichier chaque fois que de nouveaux espaces sont requis. @filegrowth est nvarchar(20), avec la valeur par défaut NULL. Une valeur indiquant qu’il n’y a pas de 0 croissance. Spécifiez un nombre entier ; n’incluez pas de décimale. La valeur peut être spécifiée dans MB, KBou pourcentage (%). Lorsqu’il % est spécifié, l’incrément de croissance est le pourcentage spécifié de la taille du fichier au moment où l’incrément se produit. Si un nombre est spécifié sans MBsuffixe ou % sans suffixeKB, la valeur par défaut est MB.

Si @filegrowth a la valeur NULL, la valeur par défaut est 10%, et la valeur minimale est 64 KB. La taille spécifiée est arrondie à la valeur multiple de 64 Ko la plus proche.

Valeurs des codes de retour

0 (réussite) ou 1 (échec).

Jeu de résultats

Aucune.

Autorisations

Exécutez les autorisations par défaut pour les membres du rôle 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\MSSQL13.MSSQLSERVER\MSSQL\Data\db1_file2.mdf',
    '1 MB';