sql >> Base de Datos >  >> RDS >> Sqlserver

Cómo agregar un archivo de datos a una base de datos de SQL Server (T-SQL)

En SQL Server, las bases de datos almacenan sus datos y objetos (como tablas, vistas, procedimientos almacenados, etc.) en archivos. Cuando crea una base de datos utilizando las opciones predeterminadas, se crean un archivo de datos y un archivo de registro. Sin embargo, no está restringido a solo uno de cada archivo. Puede agregar archivos de datos (y archivos de registro) a una base de datos en una fecha posterior si es necesario.

Este artículo contiene ejemplos del uso de T-SQL para agregar un archivo de datos a una base de datos existente en SQL Server.

Ejemplo

Este es un ejemplo de cómo agregar un solo archivo de datos a una base de datos existente:

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

Esto agrega un archivo de datos con un nombre lógico de Solutions_dat_2 y con una ruta física de /var/opt/mssql/data/Solutions_dat_2.ndf (esta es la ubicación física en la computadora).

Tenga en cuenta que este ejemplo utiliza rutas de archivo de Linux/Mac. Si usa Windows, deberá usar barras invertidas (\ ) en lugar de barras diagonales (/ ).

Aquí hay una explicación de los varios argumentos usados ​​en este ejemplo:

NAME
Especifica el nombre de archivo lógico. Este es el nombre lógico utilizado en una instancia de SQL Server al hacer referencia al archivo.
FILENAME
Esta es la ruta física completa al archivo (es decir, la ruta del sistema operativo al archivo).
SIZE
Especifica el tamaño del archivo. Se puede especificar en KB, MB, GB o TB.
MAXSIZE
El tamaño máximo de archivo al que puede crecer el archivo. Se puede especificar en KB, MB, GB, TB o ILIMITADO.
FILEGROWTH
El incremento de crecimiento automático del archivo (la cantidad de espacio agregado al archivo cada vez que se requiere espacio nuevo). Se puede especificar en KB, MB, GB, TB o %.

El valor predeterminado es MB (para megabytes).

Comprueba el resultado

Podemos verificar el resultado ejecutando la siguiente consulta:

USE Solutions;  
GO

SELECT name, physical_name  
FROM sys.database_files;  
GO

Resultado:

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

Podemos ver el nuevo archivo de datos en la lista además del archivo de datos original (y el archivo de registro).

Por supuesto, también puedes usar el asterisco (* ) para devolver todas las columnas si lo desea.

Si descubre que algún día ya no lo necesita, siempre puede eliminar su nuevo archivo de datos.