PostgreSQL - база данных DROP

В этой главе мы обсудим, как удалить базу данных в PostgreSQL. Есть два варианта удаления базы данных -

  • Использование SQL-команды DROP DATABASE.
  • Использование dropdb исполняемого файла командной строки.
Будьте осторожны перед использованием этой операции, потому что удаление существующей базы данных приведет к потере всей информации, хранящейся в базе данных.

Использование DROP DATABASE

Эта команда удаляет базу данных. Он удаляет записи каталога для базы данных и удаляет каталог, содержащий данные. Его может выполнить только владелец базы данных. Эта команда не может быть выполнена, пока вы или кто-либо еще подключены к целевой базе данных (подключитесь к postgres или любой другой базе данных, чтобы выполнить эту команду).

Синтаксис

Синтаксис для DROP DATABASE приведен ниже -

DROP DATABASE [ IF EXISTS ] name

Параметры

В таблице перечислены параметры с их описанием.

С. Нет. Параметр и описание
1

IF EXISTS

Не выдавать ошибку, если база данных не существует. В этом случае выдается уведомление.

2

name

Имя удаляемой базы данных.

Мы не можем удалить базу данных, которая имеет открытые соединения, включая наше собственное соединение с psql или pgAdmin III . Мы должны переключиться на другую базу данных или template1, если мы хотим удалить базу данных, к которой мы в настоящее время подключены. Таким образом, может быть удобнее использовать программу dropdb , которая является оболочкой для этой команды.

пример

Ниже приведен простой пример, который удалит testdb из вашей схемы PostgreSQL -

postgres=# DROP DATABASE testdb;
postgres-#

Использование команды dropdb

Исполняемый файл командной строки PostgresSQL dropdbэто оболочка командной строки для SQL-команды DROP DATABASE . Эффективной разницы между удалением баз данных с помощью этой утилиты и других методов доступа к серверу нет. dropdb уничтожает существующую базу данных PostgreSQL. Пользователь, выполняющий эту команду, должен быть суперпользователем базы данных или владельцем базы данных.

Синтаксис

Синтаксис dropdb показан ниже -

dropdb  [option...] dbname

Параметры

В следующей таблице перечислены параметры с их описанием.

С. Нет. Параметр и описание
1

dbname

Имя удаляемой базы данных.

2

option

аргументы командной строки, которые принимает dropdb.

Параметры

В следующей таблице перечислены аргументы командной строки, которые принимает dropdb:

С. Нет. Вариант и описание
1

-e

Показывает команды, отправляемые на сервер.

2

-i

Перед выполнением каких-либо разрушительных действий выдает запрос на подтверждение.

3

-V

Распечатайте версию dropdb и выйдите.

4

--if-exists

Не выдавать ошибку, если база данных не существует. В этом случае выдается уведомление.

5

--help

Показать справку об аргументах командной строки dropdb и выйти.

6

-h host

Задает имя хоста машины, на которой работает сервер.

7

-p port

Указывает порт TCP или расширение файла локального сокета домена UNIX, на котором сервер ожидает подключения.

8

-U username

Имя пользователя для подключения.

9

-w

Никогда не запрашивайте пароль.

10

-W

Заставьте dropdb запрашивать пароль перед подключением к базе данных.

11

--maintenance-db=dbname

Задает имя базы данных, к которой нужно подключиться, чтобы удалить целевую базу данных.

пример

В следующем примере показано удаление базы данных из командной строки ОС -

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

Приведенная выше команда удаляет базу данных testdb. Здесь я использовалpostgres (находится в pg_roles шаблона 1) имя пользователя для удаления базы данных.