sp_certify_removable (Transact-SQL)
Se aplica a: SQL Server
Comprueba que una base de datos se ha configurado correctamente para la distribución en medios extraíbles e informa al usuario si surgen problemas.
Importante
Esta característica se quitará en una versión futura de SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. Use CREATE DATABASE en su lugar.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_certify_removable
[ @dbname = ] N'dbname'
[ , [ @autofix = ] N'autofix' ]
[ ; ]
Argumentos
[ @dbname = ] N'dbname'
Especifica la base de datos que debe comprobarse. @dbname es sysname.
[ @autofix = ] N'autofix'
Asigna la propiedad de la base de datos y de todos sus objetos al administrador del sistema, y quita los usuarios de base de datos creados por el usuario y los permisos que no son predeterminados. @autofix es nvarchar(4), con un valor predeterminado de NULL
.
Valores de código de retorno
0
(correcto) o 1
(erróneo).
Comentarios
Si la base de datos está configurada correctamente, sp_certify_removable
realice los pasos siguientes:
- Deja la base de datos sin conexión para que se puedan copiar los archivos.
- Actualiza las estadísticas de todas las tablas e informa de cualquier problema relacionado con los usuarios o la propiedad.
- Marca los grupos de archivos de datos como de solo lectura para que los archivos puedan copiarse en medios de solo lectura.
El administrador del sistema debe ser el propietario de la base de datos y de todos sus objetos. El administrador del sistema es un usuario conocido que existe en todos los servidores que ejecutan SQL Server y se puede esperar que exista cuando la base de datos se distribuya e instale más adelante.
Si ejecuta sp_certify_removable
sin el AUTO
valor y devuelve información sobre cualquiera de las condiciones siguientes:
- El administrador del sistema no es el propietario de la base de datos.
- Existe algún usuario creado por el usuario.
- El administrador del sistema no posee todos los objetos de la base de datos.
- Se han concedido permisos que no son los predeterminados.
Estas condiciones pueden corregirse de la forma siguiente:
- Use herramientas y procedimientos de SQL Server y, a continuación, vuelva a ejecutarse
sp_certify_removable
. - Ejecute
sp_certify_removable
con elAUTO
valor .
Este procedimiento almacenado solo comprueba si hay usuarios y permisos de usuario. Puede agregar grupos a la base de datos y conceder permisos a esos grupos. Para obtener más información, vea GRANT.
Permisos
Los permisos de ejecución están restringidos a los miembros del rol fijo de servidor sysadmin .
Ejemplos
Los ejemplos siguientes certifican que la base de datos inventory
se puede quitar.
EXEC sp_certify_removable inventory, AUTO;