PostgreSQL/Postgres 创建数据库:如何创建示例

在PostgreSQL中创建数据库的语法是

CREATE DATABASE databasename

让我们学习如何在PostgreSQL命令行和GUI中设置PostgreSQL以及如何创建数据库

PSQL 创建数据库命令行(SQL Shell)

步骤1) 打开 SQL Shell

PSQL Create Database Command Line

步骤2) 按五次 Enter 键连接到数据库

PSQL Create Database Command Line

步骤3) 输入命令

CREATE DATABASE guru99;

PSQL Create Database Command Line

步骤4) 输入命令 \l 获取所有数据库的列表

PSQL Create Database Command Line

步骤5) 要连接到数据库,请使用 PostgreSQL 数据库命令

\c guru99

PSQL Create Database Command Line

提示符更改为 guru99,这表示我们已连接到 guru99 数据库,并可以在其上执行创建表、触发器、执行 SQL 等操作。

使用 pgAdmin 创建 PostgreSQL 数据库

步骤1) 在对象树中,右键单击并选择“创建数据库”以创建 PostgreSQL 数据库

PostgreSQL Create Database using pgAdmin

步骤2) 在弹出窗口中,

  1. 输入数据库名称
  2. 如果需要,请注释数据库 – 可选
  3. 单击保存

PostgreSQL Create Database using pgAdmin

步骤3) 数据库已创建并显示在对象树中。

PostgreSQL Create Database using pgAdmin

步骤4) 右侧窗格显示用于创建数据库的 SQL。

PostgreSQL Create Database using pgAdmin

创建数据库的完整语法

这是在 PostgreSQL 中创建数据库的完整语法

CREATE DATABASE db_name
OWNER =  role_name
TEMPLATE = template			
ENCODING = encoding			
LC_COLLATE = collate			
LC_CTYPE = ctype
TABLESPACE = tablespace_name
CONNECTION LIMIT = max_concurrent_connection
选项 描述
db_name 使用此选项指定要创建的新数据库的名称。不过,您需要确保数据库名称必须是唯一的,因为如果您尝试创建与现有数据库同名的数据库,PostgreSQL 将显示错误。
role_name 使用此参数定义将拥有新数据库的用户角色名称。默认为 postgres。
模板 您可以指定要从中创建新数据库的数据库模板名称。
编码 此参数允许指定新数据库的字符集编码。默认为 UTF8。
排序规则 排序规则参数指定字符串的排序顺序,这会影响在 SELECT 语句中使用 ORDER BY 子句时的结果。
Ctype 它指定新数据库的字符分类。它会影响分类,例如数字、小写和大写。
tablespace_name 使用此选项可以指定新数据库的表空间名称。默认是模板数据库的表空间。
max_concurrent_connection 使用此选项指定新数据库的最大并发连接数。默认值为 -1,表示无限制。

使用 createdb 命令时常见的错误

错误 描述
未找到 createdb 命令。 当 PostgreSQL 未正确安装时,可能会发生此类错误。此时,您需要从您的PostgreSQL 安装路径运行 createdb 命令。
服务器上未找到文件,该文件在本地运行并接受 Unix 域套接字上的连接。 当 PostgreSQL 服务器未正确启动,或者未在 createdb 命令期望的启动位置启动时,会发生此错误。
FATAL 角色 “usr name” 不存在 如果创建的 PostgreSQL 用户帐户与系统用户帐户不同,则可能会发生此错误。
创建数据库权限被拒绝 如果创建的 PostgreSQL 帐户没有创建数据库的权限。在这种情况下,您需要授予关联用户访问创建命令的权限。

摘要

  • 您可以使用 psql Windows 命令行(SQL Shell)通过命令 “CREATE DATABASE databasename” 来创建数据库。
  • 您也可以通过以下步骤使用 pgAdmin 创建数据库:在对象树中 > 右键单击数据库 > 选择“创建数据库”。
  • 创建数据库命令失败时遇到的常见错误之一是服务器未正确初始化。重启服务器可以解决此问题。