PostgreSQL – 创建架构
PostgreSQL 有一个 CREATE SCHEMA 语句,用于在数据库中创建新模式。
Syntax:
CREATE SCHEMA [IF NOT EXISTS] schema_name;
我们来分析一下上面的语法:
- 首先,在 CREATE SCHEMA 关键字之后指定模式的名称。模式名称在当前数据库中必须是唯一的。
- 其次,可选地使用 IF NOT EXISTS 仅在新模式不存在时有条件地创建它。在不使用 IF NOT EXISTS 选项的情况下尝试创建已经存在的新模式将导致错误。
注意:要执行 CREATE SCHEMA 语句,您必须在当前数据库中具有 CREATE 权限。
要为用户创建架构,请使用以下命令:
Syntax:
CREATE SCHEMA [IF NOT EXISTS] AUTHORIZATION user_name;
现在我们已经了解了在 PostgreSQL 中创建模式的基础知识,让我们进入一些示例。
示例 1:
以下语句使用 CREATE SCHEMA 语句创建一个名为marketing
的新模式:
CREATE SCHEMA IF NOT EXISTS marketing;
以下语句返回当前数据库中的所有模式:
SELECT
*
FROM
pg_catalog.pg_namespace
ORDER BY
nspname;
输出:
示例 2:
在此示例中,我们将为用户(例如 Raju)创建一个架构。做展示让我们首先使用以下语句创建一个用户:
CREATE USER Raju WITH ENCRYPTED PASSWORD 'Postgres123';
Raju
创建一个架构,如下所示:
CREATE SCHEMA AUTHORIZATION Raju;
第三,创建一个将由 Raju 拥有的新模式:
CREATE SCHEMA IF NOT EXISTS geeksforgeeks AUTHORIZATION Raju;
以下语句返回当前数据库中的所有模式:
SELECT
*
FROM
pg_catalog.pg_namespace
ORDER BY
nspname;
输出: