Оператор DROP DATABASE
в PostgreSQL используется для удаления существующей базы данных. После выполнения команды все данные и структура базы безвозвратно удаляются.
Основы оператора DROP DATABASE
Базовый синтаксис:
DROP DATABASE database_name;
Пример удаления базы данных mydb
:
DROP DATABASE mydb;
Удаление базы данных, если она существует
Чтобы избежать ошибки при удалении несуществующей базы, используется IF EXISTS
:
DROP DATABASE IF EXISTS mydb;
Принудительное удаление базы данных
Если база данных используется другими подключениями, команда DROP DATABASE
не выполнится. Для принудительного удаления можно завершить все активные соединения:
SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE datname = 'mydb';
DROP DATABASE mydb;
Особенности и ограничения
- Оператор
DROP DATABASE
может выполнять только суперпользователь или владелец базы данных. - Удаление базы данных невозможно, если в ней есть активные соединения.
- После удаления базы данных её нельзя восстановить.