CREATE DATABASE
是用于创建数据库的 DDL 命令。
CREATE DATABASE
一直存在于 PostgreSQL 中。
更改历史记录
- PostgreSQL 18
- 如果
STRATEGY
选项设置为WAL_LOG
,则将使用读取流 (提交 8720a15e)
- 如果
- PostgreSQL 16
- 添加了
ICU_RULES
选项 (提交 30a53b79)
- 添加了
- PostgreSQL 15
- PostgreSQL 13
- 添加了
LOCALE
选项,将现有的LC_COLLATE
和LC_CTYPE
选项合并 (提交 06140c20)
- 添加了
- PostgreSQL 9.5
- PostgreSQL 9.0
- PostgreSQL 8.1
- 添加了
CONNECTION LIMIT
选项 (提交 d42cf5a4)
- 添加了
- PostgreSQL 8.0
- PostgreSQL 7.3
- 添加了
OWNER
选项以允许在创建数据库时指定数据库所有者 (提交 a833c441)
- 添加了
- PostgreSQL 7.1
- 添加了
WITH TEMPLATE
选项以允许选择模板数据库作为默认 "template0
" 的替代 (提交 2cf48ca0)
- 添加了
示例
CREATE DATABASE
的基本用法示例
postgres=# CREATE DATABASE foo; CREATE DATABASE postgres=# \l+ foo List of databases -[ RECORD 1 ]-----+------------ Name | foo Owner | postgres Encoding | UTF8 Collate | en_GB.UTF-8 Ctype | en_GB.UTF-8 Access privileges | Size | 7393 kB Tablespace | pg_default Description |
创建具有不同区域设置的数据库
postgres=# CREATE DATABASE locale_test ENCODING latin1 LOCALE 'de_DE.iso88591' TEMPLATE template0; CREATE DATABASE postgres=# \l+ locale_test List of databases -[ RECORD 1 ]-----+--------------- Name | locale_test Owner | postgres Encoding | LATIN1 Collate | de_DE.iso88591 Ctype | de_DE.iso88591 Access privileges | Size | 7393 kB Tablespace | pg_default Description |
参考
- PostgreSQL 文档: CREATE DATABASE
- PostgreSQL 文档: 创建数据库