Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come aggiungere un file di dati a un database di SQL Server (T-SQL)

In SQL Server, i database archiviano i propri dati e oggetti (come tabelle, viste, stored procedure e così via) in file. Quando si crea un database utilizzando le opzioni predefinite, vengono creati un file di dati e un file di registro. Tuttavia, non sei limitato a uno solo di ogni file. È possibile aggiungere file di dati (e file di registro) a un database in un secondo momento, se necessario.

Questo articolo contiene esempi di utilizzo di T-SQL per aggiungere un file di dati a un database esistente in SQL Server.

Esempio

Ecco un esempio di aggiunta di un singolo file di dati a un database esistente:

USE master;  
GO

ALTER DATABASE Solutions   
ADD FILE 
(  
    NAME = Solutions_dat_2,  
    FILENAME = '/var/opt/mssql/data/Solutions_dat_2.ndf',  
    SIZE = 10MB,  
    MAXSIZE = 100MB,  
    FILEGROWTH = 5%  
);
GO

Questo aggiunge un file di dati con un nome logico di Solutions_dat_2 e con un percorso fisico di /var/opt/mssql/data/Solutions_dat_2.ndf (questa è la posizione fisica sul computer).

Si noti che questo esempio utilizza percorsi di file Linux/Mac. Se utilizzi Windows, dovrai utilizzare le barre rovesciate (\ ) invece delle barre (/ ).

Ecco una spiegazione dei vari argomenti utilizzati in questo esempio:

NAME
Specifica il nome del file logico. Questo è il nome logico utilizzato in un'istanza di SQL Server quando si fa riferimento al file.
FILENAME
Questo è il percorso fisico completo del file (ovvero il percorso del sistema operativo al file).
SIZE
Specifica la dimensione del file. Può essere specificato in KB, MB, GB o TB.
MAXSIZE
La dimensione massima del file a cui il file può crescere. Può essere specificato in KB, MB, GB, TB o ILLIMITATO.
FILEGROWTH
L'incremento automatico della crescita del file (la quantità di spazio aggiunta al file ogni volta che è richiesto nuovo spazio). Può essere specificato in KB, MB, GB, TB o %.

L'impostazione predefinita è MB (per megabyte).

Verifica il risultato

Possiamo verificare il risultato eseguendo la seguente query:

Soluzioni
USE Solutions;  
GO

SELECT name, physical_name  
FROM sys.database_files;  
GO

Risultato:

name             physical_name                          
---------------  ---------------------------------------
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.ndf

Possiamo vedere il nuovo file di dati elencato oltre al file di dati originale (e al file di registro).

Ovviamente puoi anche usare l'asterisco (* ) per restituire tutte le colonne, se lo desideri.

Se scopri che un giorno non ti serve più, puoi sempre rimuovere il tuo nuovo file di dati.