mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-12-13 09:52:38 +00:00
665fcf55aa
Minor text correction
60 lines
1.9 KiB
Markdown
60 lines
1.9 KiB
Markdown
---
|
||
slug: /en/sql-reference/statements/create/database
|
||
sidebar_position: 35
|
||
sidebar_label: DATABASE
|
||
---
|
||
|
||
# CREATE DATABASE
|
||
|
||
Creates a new database.
|
||
|
||
``` sql
|
||
CREATE DATABASE [IF NOT EXISTS] db_name [ON CLUSTER cluster] [ENGINE = engine(...)] [COMMENT 'Comment']
|
||
```
|
||
|
||
## Clauses
|
||
|
||
### IF NOT EXISTS
|
||
|
||
If the `db_name` database already exists, then ClickHouse does not create a new database and:
|
||
|
||
- Doesn’t throw an exception if clause is specified.
|
||
- Throws an exception if clause isn’t specified.
|
||
|
||
### ON CLUSTER
|
||
|
||
ClickHouse creates the `db_name` database on all the servers of a specified cluster. More details in a [Distributed DDL](../../../sql-reference/distributed-ddl.md) article.
|
||
|
||
### ENGINE
|
||
|
||
By default, ClickHouse uses its own [Atomic](../../../engines/database-engines/atomic.md) database engine. There are also [Lazy](../../../engines/database-engines/lazy.md), [MySQL](../../../engines/database-engines/mysql.md), [PostgresSQL](../../../engines/database-engines/postgresql.md), [MaterializedMySQL](../../../engines/database-engines/materialized-mysql.md), [MaterializedPostgreSQL](../../../engines/database-engines/materialized-postgresql.md), [Replicated](../../../engines/database-engines/replicated.md), [SQLite](../../../engines/database-engines/sqlite.md).
|
||
|
||
### COMMENT
|
||
|
||
You can add a comment to the database when you are creating it.
|
||
|
||
The comment is supported for all database engines.
|
||
|
||
**Syntax**
|
||
|
||
``` sql
|
||
CREATE DATABASE db_name ENGINE = engine(...) COMMENT 'Comment'
|
||
```
|
||
|
||
**Example**
|
||
|
||
Query:
|
||
|
||
``` sql
|
||
CREATE DATABASE db_comment ENGINE = Memory COMMENT 'The temporary database';
|
||
SELECT name, comment FROM system.databases WHERE name = 'db_comment';
|
||
```
|
||
|
||
Result:
|
||
|
||
```text
|
||
┌─name───────┬─comment────────────────┐
|
||
│ db_comment │ The temporary database │
|
||
└────────────┴────────────────────────┘
|
||
```
|