sp_attach_db

Adjunta una base de datos a un servidor.

Sintaxis

sp_attach_db [ @dbname = ] 'dbname', [ @filename1 = ] 'filename_n' [ ,...16 ]

Argumentos

[@dbname =] 'dbname'

Es el nombre de la base de datos que se va adjuntar al servidor. El nombre debe ser único. El argumento dbname es de tipo sysname y tiene un valor predeterminado de NULL.

[@filename1 =] 'filename_n'

Se trata del nombre físico, incluida la ruta de acceso, de un archivo de base de datos. El argumento filename_n es de tipo nvarchar(260) y tiene un valor predeterminado de NULL. Se pueden especificar hasta 16 nombres de archivos. Los nombres de parámetro comienzan en @filename1 y se incrementan hasta @filename16. La lista de nombres de archivos debe contener al menos el archivo principal, que contiene las tablas del sistema que apuntan a otros archivos de la base de datos. La lista también debe contener los archivos que se hayan movido después de separar la base de datos.

Valores del código de retorno

0 (correcto) o 1 (error)

Conjuntos de resultados

Ninguna

Observaciones

Sólo se debe ejecutar sp_attach_db en bases de datos que se hayan separado previamente del servidor de bases de datos con una operación sp_detach_db explícita. Si debe especificar más de 16 archivos, utilice CREATE DATABASE con la cláusula FOR ATTACH.

Si adjunta una base de datos a un servidor distinto de aquél del que se separó y la base de datos separada estaba habilitada para duplicación, deberá ejecutar sp_removedbreplication para quitar la duplicación de la base de datos.

Permisos

Sólo pueden ejecutar este procedimiento los miembros de las funciones fijas de servidor sysadmin y dbcreator.

Ejemplos

Este ejemplo adjunta dos archivos de la base de datos pubs al servidor actual.

EXEC sp_attach_db @dbname = N'pubs', 
   @filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf', 
   @filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'
Véase también

sp_detach_db