PostgreSQL 创建数据库可以用以下三种方式:
- 1、使用 CREATE DATABASE SQL 语句来创建。
- 2、使用 createdb 命令来创建。
- 3、使用 pgAdmin 工具。
CREATE DATABASE 命令需要在 PostgreSQL 命令窗口来执行,语法格式如下:
CREATE DATABASE dbname;
例如,我们创建一个 runoobdb 的数据库:
postgres=# CREATE DATABASE runoobdb;
createdb 命令创建数据库
createdb 是一个 SQL 命令 CREATE DATABASE 的封装。createdb 命令语法格式如下:
createdb [option...] [dbname [description]]
参数说明:
dbname:要创建的数据库名。
description:关于新创建的数据库相关的说明。
options:参数可选项,可以是以下值:
序号选项 & 描述1-D tablespace
指定数据库默认表空间。
2-e
将 createdb 生成的命令发送到服务端。
3-E encoding
指定数据库的编码。
4-l locale
指定数据库的语言环境。
5-T template
指定创建此数据库的模板。
6--help
显示 createdb 命令的帮助信息。
7-h host
指定服务器的主机名。
8-p port
指定服务器监听的端口,或者 socket 文件。
9-U username
连接数据库的用户名。
10-w
忽略输入密码。
11-W
连接时强制要求输入密码。
接下来我们打开一个命令窗口,进入到 PostgreSQL 的安装目录,并进入到 bin 目录,createdb 命令位于 PostgreSQL安装目录/bin 下,执行创建数据库的命令:
$ cd /Library/PostgreSQL/11/bin/
$ createdb -h localhost -p 5432 -U postgres runoobdb
password ******
以上命令我们使用了超级用户 postgres 登录到主机地址为 localhost,端口号为 5432 的 PostgreSQL 数据库中并创建 runoobdb 数据库。
pgAdmin 工具创建数据库pgAdmin 工具提供了完整操作数据库的功能:
上面我们介绍了如何创建数据库,接下来我们来讨论如何去选择我们创建的数据库。
数据库的命令窗口PostgreSQL 命令窗口中,我们可以命令提示符后面输入 SQL 语句:
postgres=#
使用 \l 用于查看已经存在的数据库:
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+---------+-------+-----------------------
postgres | postgres | UTF8 | C | C |
runoobdb | postgres | UTF8 | C | C |
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)
接下来我们可以使用 \c + 数据库名 来进入数据库:
postgres=# \c runoobdb
You are now connected to database "runoobdb" as user "postgres".
runoobdb=#
系统命令行窗口
在系统的命令行查看,我么可以在连接数据库后面添加数据库名来选择数据库:
$ psql -h localhost -p 5432 -U postgress runoobdb
Password for user postgress: ****
psql (11.3)
Type "help" for help.
You are now connected to database "runoobdb" as user "postgres".
runoobdb=#
pgAdmin 工具
pgAdmin 工具更简单了,直接点击数据库选择就好了,还可以查看一些数据库额外的信息:
PostgreSQL 删除数据库可以用以下三种方式:
- 1、使用 DROP DATABASE SQL 语句来删除。
- 2、使用 dropdb 命令来删除。
- 3、使用 pgAdmin 工具。
注意:删除数据库要谨慎操作,一旦删除,所有信息都会消失。
DROP DATABASE 删除数据库DROP DATABASE 会删除数据库的系统目录项并且删除包含数据的文件目录。
DROP DATABASE 只能由超级管理员或数据库拥有者执行。
DROP DATABASE 命令需要在 PostgreSQL 命令窗口来执行,语法格式如下:
DROP DATABASE [ IF EXISTS ] name
参数说明:
- IF EXISTS:如果数据库不存在则发出提示信息,而不是错误信息。
- name:要删除的数据库的名称。
例如,我们删除一个 runoobdb 的数据库:
postgres=# DROP DATABASE runoobdb;
dropdb 命令删除数据库
dropdb 是 DROP DATABASE 的包装器。
dropdb 用于删除 PostgreSQL 数据库。
dropdb 命令只能由超级管理员或数据库拥有者执行。
dropdb 命令语法格式如下:
dropdb [connection-option...] [option...] dbname
参数说明:
dbname:要删除的数据库名。
options:参数可选项,可以是以下值:
序号选项 & 描述1-e
显示 dropdb 生成的命令并发送到数据库服务器。
2-i
在做删除的工作之前发出一个验证提示。
3-V
打印 dropdb 版本并退出。
4--if-exists
如果数据库不存在则发出提示信息,而不是错误信息。
5--help
显示有关 dropdb 命令的帮助信息。
6-h host
指定运行服务器的主机名。
7-p port
指定服务器监听的端口,或者 socket 文件。
8-U username
连接数据库的用户名。
9-w
连接数据库的用户名。
10-W
连接时强制要求输入密码。
11--maintenance-db=dbname
删除数据库时指定连接的数据库,默认为 postgres,如果它不存在则使用 template1。
接下来我们打开一个命令窗口,进入到 PostgreSQL 的安装目录,并进入到 bin 目录,dropdb 名位于 PostgreSQL安装目录/bin 下,执行删除数据库的命令:
$ cd /Library/PostgreSQL/11/bin/
$ dropdb -h localhost -p 5432 -U postgres runoobdb
password ******
以上命令我们使用了超级用户 postgres 登录到主机地址为 localhost,端口号为 5432 的 PostgreSQL 数据库中并删除 runoobdb 数据库。
pgAdmin 工具删除据库pgAdmin 工具提供了完整操作数据库的功能: