sp_create_removable (Transact-SQL)

Crea una base de datos de medios extraíbles. Genera tres archivos o más (uno para las tablas de catálogo del sistema, otro para el registro de transacciones y uno o más archivos para las tablas de datos) y coloca la base de datos en esos archivos.

Nota importanteImportante

Esta característica se quitará en una versión futura de Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. En su lugar, se recomienda utilizar CREATE DATABASE.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL (Transact-SQL)

Sintaxis

sp_create_removable 
   [ @dbname = ] 'dbname', 
   [ @syslogical= ] 'syslogical', 
   [ @sysphysical = ] 'sysphysical', 
   [ @syssize = ] syssize, 
   [ @loglogical = ] 'loglogical', 
   [ @logphysical = ] 'logphysical', 
   [ @logsize = ] logsize, 
   [ @datalogical1 = ] 'datalogical1', 
   [ @dataphysical1 = ] 'dataphysical1', 
   [ @datasize1 = ] datasize1 , 
   [ @datalogical16 = ] 'datalogical16', 
   [ @dataphysical16 = ] 'dataphysical16', 
   [ @datasize16 = ] datasize16 ]

Argumentos

  • [ [ @dbname= ] 'dbname'
    Es el nombre de la base de datos que se creará para usarla en medios extraíbles. dbname es de tipo sysname.

  • [ [ @syslogical= ] 'syslogical'
    Es el nombre lógico del archivo que contiene las tablas del catálogo del sistema. syslogical es de tipo sysname.

  • [ [ @sysphysical= ] 'sysphysical'
    Es el nombre físico. Se incluye la ruta de acceso completa al archivo que contiene las tablas del catálogo del sistema. sysphysical es de tipo nvarchar(260).

  • [ [ @syssize= ] syssize
    Es el tamaño, en megabytes, del archivo que contiene las tablas del catálogo del sistema. syssize es de tipo int. El valor mínimo de syssize es 1.

  • [ [ @loglogical= ] 'loglogical'
    Es el nombre lógico del archivo que contiene el registro de transacciones. loglogical es de tipo sysname.

  • [ [ @logphysical= ] 'logphysical'
    Es el nombre físico. Se incluye la ruta de acceso completa al archivo que contiene el registro de transacciones. logphysical es de tipo nvarchar(260).

  • [ [ @logsize= ] logsize
    Es el tamaño, en megabytes, del archivo que contiene el registro de transacciones. logsize es de tipo int. El valor mínimo de logsize es 1.

  • [ [ @datalogical1= ] 'datalogical'
    Es el nombre lógico de un archivo que contiene las tablas de datos. datalogical es de tipo sysname.

    Debe ser un número de archivos de datos comprendido entre 1 y 16. Normalmente, se crea más de un archivo de datos cuando se espera que la base de datos tenga un gran tamaño y deba distribuirse en varios discos.

  • [ [ @dataphysical1= ] 'dataphysical'
    Es el nombre físico. Se incluye la ruta de acceso completa a un archivo que contiene tablas de datos. dataphysical es de tipo nvarchar(260).

  • [ [ @datasize1= ] 'datasize'
    Es el tamaño, en megabytes, de un archivo que contiene tablas de datos. datasize es de tipo int. El valor mínimo de datasize es 1.

Valores de código de retorno

0 (correcto) o 1 (error)

Conjuntos de resultados

Ninguno

Notas

Utilice este procedimiento almacenado si desea realizar una copia de la base de datos en un medio extraíble (como un disco compacto) y distribuir la base de datos a otros usuarios.

Permisos

Requiere el permiso CREATE DATABASE, CREATE ANY DATABASE o ALTER ANY DATABASE.

Para mantener el control de la utilización del disco en una instancia de SQL Server, el permiso para crear bases de datos suele limitarse a un número reducido de cuentas de inicio de sesión.

Permisos en archivos de datos y de registro

En SQL Server 2005, algunos permisos se establecen en los archivos de datos y de registro de cada base de datos. Siempre que se realizan las operaciones siguientes en una base de datos, se establecen estos permisos:

Creada

Modificada para agregar un nuevo archivo

Adjuntada

Copia de seguridad

Separada

Restaurada

Los permisos evitan que los archivos se modifiquen accidentalmente si residen en un directorio sin restricción de permisos. Para obtener más información, consulte Proteger archivos de datos y de registro.

[!NOTA]

MicrosoftSQL Server 2005 Express Edition no establece permisos en archivos de datos y de registro.

Ejemplos

En el ejemplo siguiente se crea la base de datos inventory como una base de datos extraíble.

EXEC sp_create_removable 'inventory', 
   'invsys',
   'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\invsys.mdf'
, 2, 
   'invlog',
   'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\invlog.ldf', 4,
   'invdata',
   'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Data\invdata.ndf', 
10