PostgreSQL - Base de datos DROP

En este capítulo, discutiremos cómo eliminar la base de datos en PostgreSQL. Hay dos opciones para eliminar una base de datos:

  • Usando DROP DATABASE, un comando SQL.
  • Usando dropdb un ejecutable de línea de comandos.
Tenga cuidado antes de usar esta operación porque eliminar una base de datos existente resultaría en la pérdida de toda la información almacenada en la base de datos.

Usando DROP DATABASE

Este comando elimina una base de datos. Elimina las entradas del catálogo de la base de datos y elimina el directorio que contiene los datos. Solo puede ser ejecutado por el propietario de la base de datos. Este comando no se puede ejecutar mientras usted o cualquier otra persona esté conectado a la base de datos de destino (conéctese a postgres o cualquier otra base de datos para emitir este comando).

Sintaxis

La sintaxis de DROP DATABASE se proporciona a continuación:

DROP DATABASE [ IF EXISTS ] name

Parámetros

La tabla enumera los parámetros con sus descripciones.

S. No. Descripción de parámetros
1

IF EXISTS

No arroje un error si la base de datos no existe. En este caso, se emite un aviso.

2

name

El nombre de la base de datos que se eliminará.

No podemos eliminar una base de datos que tenga conexiones abiertas, incluida nuestra propia conexión desde psql o pgAdmin III . Debemos cambiar a otra base de datos o plantilla1 si queremos eliminar la base de datos a la que estamos conectados actualmente. Por lo tanto, podría ser más conveniente usar el programa dropdb en su lugar, que es un envoltorio de este comando.

Ejemplo

El siguiente es un ejemplo simple, que eliminará testdb desde su esquema de PostgreSQL -

postgres=# DROP DATABASE testdb;
postgres-#

Usando el comando dropdb

Ejecutable de línea de comando PostgresSQL dropdbes un contenedor de línea de comandos alrededor del comando SQL DROP DATABASE . No existe una diferencia efectiva entre eliminar bases de datos a través de esta utilidad y a través de otros métodos para acceder al servidor. dropdb destruye una base de datos PostgreSQL existente. El usuario que ejecuta este comando debe ser un superusuario de la base de datos o el propietario de la base de datos.

Sintaxis

La sintaxis de dropdb es la que se muestra a continuación:

dropdb  [option...] dbname

Parámetros

La siguiente tabla enumera los parámetros con sus descripciones

S. No. Descripción de parámetros
1

dbname

El nombre de una base de datos que se eliminará.

2

option

argumentos de la línea de comandos, que dropdb acepta.

Opciones

La siguiente tabla enumera los argumentos de la línea de comandos que dropdb acepta:

S. No. Opción y descripción
1

-e

Muestra los comandos que se envían al servidor.

2

-i

Emite un mensaje de verificación antes de hacer algo destructivo.

3

-V

Imprima la versión dropdb y salga.

4

--if-exists

No arroje un error si la base de datos no existe. En este caso, se emite un aviso.

5

--help

Muestre ayuda sobre los argumentos de la línea de comandos de dropdb y salga.

6

-h host

Especifica el nombre de host de la máquina en la que se ejecuta el servidor.

7

-p port

Especifica el puerto TCP o la extensión del archivo de socket del dominio UNIX local en el que el servidor está escuchando conexiones.

8

-U username

Nombre de usuario para conectarse como.

9

-w

Nunca emita una solicitud de contraseña.

10

-W

Forzar dropdb para solicitar una contraseña antes de conectarse a una base de datos.

11

--maintenance-db=dbname

Especifica el nombre de la base de datos a la que conectarse para descartar la base de datos de destino.

Ejemplo

El siguiente ejemplo demuestra cómo eliminar una base de datos del símbolo del sistema del sistema operativo:

dropdb -h localhost -p 5432 -U postgress testdb
Password for user postgress: ****

El comando anterior elimina la base de datos testdb. Aquí, he usado elpostgres (que se encuentra en pg_roles de template1) nombre de usuario para eliminar la base de datos.