PostgreSQL 创建数据库
本章介绍了如何在您的PostgreSQL中创建新数据库。PostgreSQL提供了两种创建新数据库的方式 –
- 使用CREATE DATABASE,一个SQL命令。
- 使用createdb,一个命令行可执行文件。
使用CREATE DATABASE
这个命令将在PostgreSQL shell提示符下创建一个数据库,但是您必须有适当的权限来创建一个数据库。默认情况下,新数据库将使用标准系统数据库template1来创建。
语法
CREATE DATABASE语句的基本语法如下 –
CREATE DATABASE dbname;
其中, dbname是要创建的数据库的名称。
示例
以下是一个简单的示例,将在您的 PostgreSQL 模式中创建 testdb 。
postgres=# CREATE DATABASE testdb;
postgres-#
使用createdb命令
PostgreSQL命令行可执行文件createdb是对SQL命令CREATE DATABASE的封装。与SQL命令CREATE DATABASE的唯一区别是,前者可以直接从命令行运行,并且允许在一个命令中添加一个注释到数据库中。
语法
createdb的语法如下所示:
createdb [option...] [dbname [description]]
参数
下表列出了参数及其描述。
序号 | 参数和描述 |
---|---|
1 | dbname 要创建的数据库的名称。 |
2 | description 指定与新创建的数据库关联的注释。 |
3 | options createdb接受的命令行参数。 |
选项
下面的表格列出了createdb命令行参数的列表 –
序号 | 选项和描述 |
---|---|
1 | -D tablespace 指定数据库的默认表空间。 |
2 | -e 显示由createdb生成并发送到服务器的命令。 |
3 | -E encoding 指定要在此数据库中使用的字符编码方案。 |
4 | -l locale 指定要在此数据库中使用的区域设置。 |
5 | -T template 指定构建此数据库的模板数据库。 |
6 | --help 显示有关createdb命令行参数的帮助信息,然后退出。 |
7 | -h host 指定服务器运行的机器的主机名。 |
8 | -p port 指定服务器用于侦听连接的TCP端口或本地Unix域套接字文件扩展名。 |
9 | -U username 要连接的用户名。 |
10 | -w 永远不要发出密码提示。 |
11 | -W 强制createdb在连接到数据库之前提示输入密码。 |
打开命令提示符并进入PostgreSQL安装目录。进入bin目录并执行以下命令以创建数据库。
createdb -h localhost -p 5432 -U postgres testdb
password ******
上述给出的命令将提示您输入PostgreSQL管理员用户的密码,其默认密码为 postgres 。因此,请提供密码并继续创建新数据库。
使用上述任一方法创建数据库后,您可以使用 \l 命令在数据库列表中检查它,即反斜杠el命令如下所示:
postgres-# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+---------+-------+-----------------------
postgres | postgres | UTF8 | C | C |
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
testdb | postgres | UTF8 | C | C |
(4 rows)
postgres-#