sp_add_data_file_recover_suspect_db (Transact-SQL)

Aggiunge un file di dati a un filegroup quando non è possibile completare l'operazione di recupero di un database a causa di spazio insufficiente nel filegroup (errore 1105). Dopo l'aggiunta del file, la stored procedure disattiva l'impostazione sospetta e completa il recupero del database. I parametri sono gli stessi dell'istruzione ALTER DATABASE database_name ADD FILE.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

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'

Argomenti

  • [ @dbName= ] **'**database '
    Nome del database. database è di tipo sysname e non prevede alcun valore predefinito.

  • [ @filegroup= ] **'**filegroup_name '
    Filegroup a cui aggiungere il file. filegroup_name è di tipo nvarchar(260) e il valore predefinito è NULL, che indica il file primario.

  • [ @name= ] **'**logical_file_name '
    Nome utilizzato in SQL Server 2005 Database Engine (Motore di database) per fare riferimento al file. Deve essere un nome univoco nel server. logical_file_name è di tipo nvarchar(260) e non prevede alcun valore predefinito.

  • [ @filename= ] **'**os_file_name '
    Percorso e nome di file utilizzati dal sistema operativo per il file. Il file deve essere disponibile in un'istanza di Motore di database. os_file_name è di tipo nvarchar(260) e non prevede alcun valore predefinito.

  • [ @size= ] **'**size '
    Dimensioni iniziali del file. size è di tipo nvarchar(20) e il valore predefinito è NULL. Specificare un numero intero, ovvero non includere decimali. È possibile utilizzare i suffissi MB e KB per specificare megabyte o kilobyte. Il valore predefinito è MB. Il valore minimo è 512 KB. Se size viene omesso, il valore predefinito è 1 MB.

  • [ @maxsize= ] **'**max_size '
    Dimensioni massime del file. max_size è di tipo nvarchar(20) e il valore predefinito è NULL. Specificare un numero intero, ovvero non includere decimali. È possibile utilizzare i suffissi MB e KB per specificare megabyte o kilobyte. Il valore predefinito è MB.

    Se max_size viene omesso, le dimensioni del file aumentano fino a quando il disco non risulta pieno. Prima che si verifichi questa situazione, l'amministratore riceve un avviso dal registro applicazioni di Microsoft Windows.

  • [ @filegrowth= ] **'**growth_increment '
    Quantità di spazio aggiunta al file ogni volta che è necessario spazio aggiuntivo. growth_increment è di tipo nvarchar(20) e il valore predefinito è NULL. Il valore 0 indica che le dimensioni non verranno aumentate. Specificare un numero intero, ovvero non includere decimali. È possibile specificare il valore in megabyte (MB) o in kilobyte (KB) oppure in forma di percentuale (%). Se si utilizza il suffisso %, l'incremento corrisponde alla percentuale specificata delle dimensioni del file quando si verifica l'incremento. Se si specifica un valore senza il suffisso MB, KB o %, il suffisso predefinito è MB.

    Se growth_increment è NULL, il valore predefinito è 10% e il valore minimo è 64 KB. Le dimensioni specificate vengono arrotondate al blocco di 64 KB più prossimo.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Set di risultati

Nessuno

Autorizzazioni

Le autorizzazioni di esecuzione vengono assegnate per impostazione predefinita ai membri del ruolo predefinito del server sysadmin. Queste autorizzazioni non sono trasferibili.

Esempi

In questo esempio il database db1 è stato contrassegnato come sospetto durante l'operazione di recupero a causa di spazio insufficiente (errore 1105) nel filegroup fg1.

USE master;
GO
EXEC sp_add_data_file_recover_suspect_db db1, fg1, file2,
    'C:\Program Files\Microsoft SQL     Server\MSSQL10.MSSQLSERVER\MSSQL\Data\db1_file2.mdf', '1MB';