sp_certify_removable (Transact-SQL)

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.

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_certify_removable [ @dbname= ] 'dbname'
          [ , [ @autofix = ] 'auto' ]

Argumentos

  • [ @dbname=] 'dbname'
    Especifica la base de datos que debe comprobarse. dbname es de tipo sysname.

  • [ @autofix=] 'auto'
    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. auto es de tipo nvarchar(4) y su valor predeterminado es NULL.

Valores de código de retorno

0 (correcto) o 1 (error)

Notas

Si la base de datos se ha configurado correctamente, sp_certify_removable realiza las tareas siguientes:

  • Desconecta la base de datos 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 sólo lectura para que los archivos puedan copiarse en medios de sólo 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 MicrosoftSQL Server y se prevé que exista cuando la base de datos se distribuya e instale posteriormente.

Si ejecuta sp_certify_removable sin el valor auto y devuelve información acerca de alguna de las siguientes condiciones:

  • 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 tiene la propiedad de 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:

  • Utilice los procedimientos y herramientas de SQL Server y, a continuación, vuelva a ejecutar sp_certify_removable.

  • Ejecute sp_certify_removable con el valor auto.

Tenga presente que este procedimiento almacenado sólo comprueba los usuarios y sus permisos. Puede agregar grupos a la base de datos y conceder permisos a esos grupos. Para obtener más información, vea GRANT (Transact-SQL).

Permisos

Los permisos de ejecución están restringidos a los miembros de la función fija de servidor sysadmin.

Ejemplos

Los ejemplos siguientes certifican que la base de datos inventory se puede quitar.

EXEC sp_certify_removable inventory, AUTO