📅  最后修改于: 2020-11-26 06:15:35             🧑  作者: Mango
本章讨论如何在PostgreSQL中创建新数据库。 PostgreSQL提供了两种创建新数据库的方式-
该命令将从PostgreSQL Shell提示符创建数据库,但是您应该具有创建数据库的适当特权。默认情况下,将通过克隆标准系统数据库template1来创建新数据库。
CREATE DATABASE语句的基本语法如下:
CREATE DATABASE dbname;
其中dbname是要创建的数据库的名称。
以下是一个简单的示例,它将在您的PostgreSQL模式中创建testdb
postgres=# CREATE DATABASE testdb;
postgres-#
PostgreSQL命令行可执行文件createdb是SQL命令CREATE DATABASE的包装。此命令和SQL命令CREATE DATABASE之间的唯一区别是,前者可以直接从命令行运行,并且可以在一个命令中将注释添加到数据库中。
createdb的语法如下所示-
createdb [option...] [dbname [description]]
下表列出了参数及其说明。
S. No. | Parameter & Description |
---|---|
1 |
dbname The name of a database to create. |
2 |
description Specifies a comment to be associated with the newly created database. |
3 |
options command-line arguments, which createdb accepts. |
下表列出了createdb接受的命令行参数-
S. No. | Option & Description |
---|---|
1 |
-D tablespace Specifies the default tablespace for the database. |
2 |
-e Echo the commands that createdb generates and sends to the server. |
3 |
-E encoding Specifies the character encoding scheme to be used in this database. |
4 |
-l locale Specifies the locale to be used in this database. |
5 |
-T template Specifies the template database from which to build this database. |
6 |
–help Show help about createdb command line arguments, and exit. |
7 |
-h host Specifies the host name of the machine on which the server is running. |
8 |
-p port Specifies the TCP port or the local Unix domain socket file extension on which the server is listening for connections. |
9 |
-U username User name to connect as. |
10 |
-w Never issue a password prompt. |
11 |
-W Force createdb to prompt for a password before connecting to a database. |
打开命令提示符,然后转到安装PostgreSQL的目录。进入bin目录并执行以下命令来创建数据库。
createdb -h localhost -p 5432 -U postgres testdb
password ******
上面给出的命令将提示您输入PostgreSQL管理员用户的密码,默认情况下为postgres 。因此,提供密码并继续创建新数据库
使用上述任何一种方法创建数据库后,您都可以使用\ l在数据库列表中对其进行检查,即如下所示的backslash 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-#