> For the complete documentation index, see [llms.txt](https://mariadb.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mariadb.com/docs/server/reference/sql-statements/data-definition/drop/drop-database.md).

# DROP DATABASE

## Syntax

```bnf
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name
```

## Description

`DROP DATABASE` drops all tables in the database and deletes the database. Be very careful with this statement! To use DROP DATABASE, you need the [DROP privilege](/docs/server/reference/sql-statements/account-management-sql-statements/grant.md#table-privileges) on the database. `DROP SCHEMA` is a synonym for `DROP DATABASE`.

**Important:** When a database is dropped, user privileges on the database are not automatically dropped. See [GRANT](/docs/server/reference/sql-statements/account-management-sql-statements/grant.md).

#### IF EXISTS

Use `IF EXISTS` to prevent an error from occurring for databases that do not exist. A `NOTE` is generated for each non-existent database when using `IF EXISTS`. See [SHOW WARNINGS](/docs/server/reference/sql-statements/administrative-sql-statements/show/show-warnings.md).

### Atomic DDL

{% tabs %}
{% tab title="Current" %}
[MariaDB 10.6.1](/docs/release-notes/community-server/10.6/10.6.1.md) supports [Atomic DDL](/docs/server/reference/sql-statements/data-definition/atomic-ddl.md).`DROP DATABASE` is implemented as

```sql
LOOP OVER ALL tables
  DROP TABLE tbl
```

Each individual [DROP TABLE](/docs/server/server-usage/tables/drop-table.md) is atomic while `DROP DATABASE` as a whole is crash-safe.
{% endtab %}

{% tab title="< 10.6.1" %}
Atomic `DROP` is not available.
{% endtab %}
{% endtabs %}

## Examples

```sql
DROP DATABASE bufg;
Query OK, 0 rows affected (0.39 sec)

DROP DATABASE bufg;
ERROR 1008 (HY000): Can't drop database 'bufg'; database doesn't exist

 \W
SHOW warnings enabled.

DROP DATABASE IF EXISTS bufg;
Query OK, 0 rows affected, 1 warning (0.00 sec)
Note (Code 1008): Can't DROP DATABASE 'bufg'; DATABASE doesn't exist
```

## See Also

* [CREATE DATABASE](/docs/server/reference/sql-statements/data-definition/create/create-database.md)
* [ALTER DATABASE](/docs/server/reference/sql-statements/data-definition/alter/alter-database.md)
* [SHOW DATABASES](/docs/server/reference/sql-statements/administrative-sql-statements/show/show-databases.md)
* [Information Schema SCHEMATA Table](/docs/server/reference/system-tables/information-schema/information-schema-tables/information-schema-schemata-table.md)
* [SHOW CREATE DATABASE](/docs/server/reference/sql-statements/administrative-sql-statements/show/show-create-database.md)

<sub>*This page is licensed: GPLv2, originally from*</sub> [<sub>*fill\_help\_tables.sql*</sub>](https://github.com/MariaDB/server/blob/main/scripts/fill_help_tables.sql)

{% @marketo/form formId="4316" %}
