Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 59 additions & 1 deletion docs/sql-ref-syntax-ddl-drop-database.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,62 @@ license: |
limitations under the License.
---

**This page is under construction**
### Description

Drop a database and delete the directory associated with the database from the file system. An
exception will be thrown if the database does not exist in the system.

### Syntax

{% highlight sql %}
DROP (DATABASE|SCHEMA) [IF EXISTS] dbname [RESTRICT|CASCADE];
{% endhighlight %}


### Parameters

<dl>
<dt><code><em>DATABASE|SCHEMA</em></code></dt>
<dd>`DATABASE` and `SCHEMA` mean the same thing, either of them can be used.</dd>
</dl>

<dl>
<dt><code><em>IF EXISTS</em></code></dt>
<dd>If specified, no exception is thrown when the database does not exist.</dd>
</dl>

<dl>
<dt><code><em>RESTRICT</em></code></dt>
<dd>If specified, will restrict dropping a non-empty database and is enabled by default.</dd>
</dl>

<dl>
<dt><code><em>CASCADE</em></code></dt>
<dd>If specified, will drop all the associated tables and functions.</dd>
</dl>

### Example
{% highlight sql %}
-- Create `inventory_db` Database
CREATE DATABASE inventory_db COMMENT 'This database is used to maintain Inventory';

-- Drop the database and it's tables
DROP DATABASE inventory_db CASCADE;
+---------+
| Result |
+---------+
+---------+

-- Drop the database using IF EXISTS
DROP DATABASE IF EXISTS inventory_db CASCADE;
+---------+
| Result |
+---------+
+---------+

{% endhighlight %}

### Related statements
- [CREATE DATABASE](sql-ref-syntax-ddl-create-database.html)
- [DESCRIBE DATABASE](sql-ref-syntax-aux-describe-database.html)
- [SHOW DATABASES](sql-ref-syntax-aux-show-databases.html)