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.
Importante |
---|
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. |
Convenciones 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
Comentarios
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 del uso 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
A partir de SQL Server 2005, siempre que ciertas operaciones se realizan en una base de datos, los permisos correspondientes se establecen en sus datos y archivos de registro. Los permisos evitan que los archivos se modifiquen accidentalmente si residen en un directorio sin restricción de permisos.
Operación en base de datos |
Permisos establecidos en archivos |
---|---|
Modificada para agregar un nuevo archivo |
Creado |
Copia de seguridad |
Adjuntada |
Restaurada |
Separada |
[!NOTA]
SQL 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\MSSQL11.MSSQLSERVER\MSSQL\Data\invsys.mdf'
, 2,
'invlog',
'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invlog.ldf', 4,
'invdata',
'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data\invdata.ndf',
10
Vea también
Referencia
sp_certify_removable (Transact-SQL)
sp_helpfilegroup (Transact-SQL)
Procedimientos almacenados del sistema (Transact-SQL)