Exportar (0) Imprimir
Expandir todo
Expandir Minimizar

DROP DATABASE (Transact-SQL)

Actualizado: 12 de diciembre de 2006

Quita una o varias bases de datos o instantáneas de la base de datos de una instancia de SQL Server.

Icono de vínculo a temas Convenciones de sintaxis de Transact-SQL


DROP DATABASE { database_name | database_snapshot_name } [ ,...n ] 
[;]

database_name

Especifica el nombre de la base de datos que se va a quitar. Para mostrar una lista de bases de datos, utilice la vista de catálogo sys.databases.

database_snapshot_name

Especifica el nombre de la instantánea de base de datos que se va a quitar.

Para utilizar DROP DATABASE, el contexto de base de datos de la conexión no puede ser el mismo que el de la base de datos o instantánea de la base de datos que se va a quitar.

La instrucción DROP DATABASE debe ejecutarse en modo de confirmación automática y no se permite en una transacción explícita o implícita. El modo de confirmación automática es el modo de administración de transacciones predeterminado. Para obtener más información, vea Transacciones de confirmación automática.

Quitar una base de datos

Las bases de datos del sistema no se pueden quitar.

Al quitar una base de datos, se elimina la base de datos de una instancia de SQL Server, así como los archivos de disco físico que utiliza. Si la base de datos o alguno de sus archivos están sin conexión cuando se quita, no se eliminan los archivos de disco. Estos archivos se pueden eliminar manualmente en el Explorador de Windows. Para quitar una base de datos del servidor actual sin eliminar los archivos del sistema de archivos, use sp_detach_db.

No se puede quitar una base de datos que se está utilizando actualmente. Es decir, que un usuario la tenga abierta para lectura o escritura. Para quitar usuarios de la base de datos, utilice ALTER DATABASE para establecer la base de datos en SINGLE_USER.

Deben quitarse las instantáneas de una base de datos para poder quitar esa base de datos.

Si la base de datos participa en el trasvase de registros, quite el trasvase de registros antes de quitar la base de datos. Para obtener más información, vea Trasvase de registros.

Una base de datos se puede quitar sea cual sea su estado (sin conexión, sólo lectura, sospechosa, etc.). Para ver el estado actual de una base de datos, utilice la vista de catálogo sys.databases.

Una base de datos que se ha quitado sólo puede volver a crearse si se restaura una copia de seguridad. No es posible realizar copias de seguridad de instantáneas de la base de datos, por lo que éstas no se pueden restaurar.

Cuando se quita una base de datos, debe realizarse una copia de seguridad de la base de datos master.

Quitar una instantánea de la base de datos

Cuando se quita una instantánea de la base de datos, se elimina la instantánea de la base de datos de una instancia de SQL Server, así como los archivos físicos dispersos del sistema de archivos NTFS que utiliza. Para obtener información sobre cómo las instantáneas de la base de datos utilizan archivos dispersos, vea Funcionamiento de las instantáneas de la base de datos.

Al quitar una instantánea de la base de datos se borra la caché del plan para la instancia de SQL Server. Al borrar la caché del plan, se provoca una nueva compilación de todos los planes de ejecución posteriores y puede ocasionar una disminución repentina y temporal del rendimiento de las consultas. En el Service Pack 2 de SQL Server 2005, para cada almacén de caché borrado de la caché del plan, el registro de errores de SQL Server contendrá el siguiente mensaje informativo: "SQL Server ha detectado %d instancias de vaciado del almacén de caché '%s' (parte de la caché del plan) debido a determinadas operaciones de mantenimiento de base de datos o reconfiguración". Este mensaje se registra cada cinco minutos siempre que se vacía la caché dentro de ese intervalo de tiempo.

Quitar una base de datos utilizada en la réplica

Para quitar una base de datos publicada para la réplica transaccional, o suscrita o publicada para la réplica de mezcla, primero es necesario quitar la réplica de la base de datos. Para obtener más información sobre cómo quitar la réplica de una base de datos, vea Quitar la réplica. Si se daña una base de datos o no se puede quitar la réplica primero, o ambas cosas, la mayoría de las veces todavía se puede quitar la base de datos utilizando ALTER DATABASE para definirla como sin conexión y, después, quitarla.

Para ejecutar DROP DATABASE, el usuario debe tener, como mínimo, el permiso CONTROL en la base de datos.

A. Quitar una sola base de datos

En el ejemplo siguiente se quita la base de datos Sales.

DROP DATABASE Sales;

B. Quitar varias bases de datos

En el ejemplo siguiente se quita cada una de las bases de datos enumeradas.

DROP DATABASE Sales, NewSales;

C. Quitar una instantánea de la base de datos

En el ejemplo siguiente se quita una instantánea de la base de datos, denominada sales_snapshot0600, sin que la base de datos de origen se vea afectada.

DROP DATABASE sales_snapshot0600;

Versión Historial

12 de diciembre de 2006

Contenido nuevo:
  • Se ha agregado información acerca de cómo borrar la caché del plan a la sección "Quitar una instantánea de la base de datos".

17 de julio de 2006

Contenido nuevo:
  • Se ha agregado la referencia al uso de sp_detach_db como una alternativa a quitar una base de datos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft