PostgreSQL - SCHEMA

一个schema是表的命名集合。schema还可以包含视图、索引、序列、数据类型、运算符和函数。模式类似于操作系统级别的目录,只是schema不能嵌套。

PostgreSQL 语句CREATE SCHEMA 创建一个schema。

句法

CREATE SCHEMA 的基本语法如下

CREATE SCHEMA name;

其中name是架构的名称。

在schema中创建表的语法

在模式中创建表的基本语法如下

CREATE TABLE myschema.pgccc_mytable (
...
);

例子

让我们看一个创建schema的例子。连接到数据库LNXDB并创建一个myschema,如下所示

LNXDB=# create schema myschema;
CREATE SCHEMA

消息“CREATE SCHEMA”表示schema已成功创建。

现在,让我们在上述schema中创建一个表,如下所示

LNXDB=# create table myschema.pgccc_company(
ID INT NOT NULL,
NAME VARCHAR (20) NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR (25),
SALARY DECIMAL (18, 2),
PRIMARY KEY (ID));

这将创建一个空表。您可以验证使用下面给出的命令创建的表

LNXDB=# select * from myschema.company;

这将产生以下结果

id | name | age | address | salary
‐‐‐‐+‐‐‐‐‐‐+‐‐‐‐‐+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐
(0 rows)

删除schema的语法

要删除空的schema(其中的所有对象都已删除),请使用命令

DROP SCHEMA myschema;

要删除包含所有包含对象的schema,请使用命令

DROP SCHEMA myschema CASCADE;

使用schema的优点

  • 它允许许多用户使用一个数据库而不会相互干扰。

  • 它将数据库对象组织成逻辑组,使它们更易于管理。

  • 第三方应用程序可以放在单独的模式中,这样它们就不会与其他对象的名称发生冲突。