PostgreSQL 模式(SCHEMA)

Posted 瀚高PG实验室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PostgreSQL 模式(SCHEMA)相关的知识,希望对你有一定的参考价值。

PostgreSQL 模式(SCHEMA)可以看着是一个表的集合。
一个模式可以包含视图、索引、数据类型、函数和操作符等。
相同的对象名称可以被用于不同的模式中而不会出现冲突,例如 schema1 和 myschema 都可以包含名为 mytable 的表。
使用模式的优势:

  1. 允许多个用户使用一个数据库并且不会互相干扰。
  2. 将数据库对象组织成逻辑组以便更容易管理。
  3. 第三方应用的对象可以放在独立的模式中,这样它们就不会与其他对象的名称发生冲突。

模式类似于操作系统层的目录,但是模式不能嵌套。

语法

我们可以使用 CREATE SCHEMA 语句来创建模式,语法格式如下:

CREATE SCHEMA myschema.mytable (
...
);

实例

接下来我们连接到 hgdb 来创建模式 myschema:

hgdb=# create schema myschema;
CREATE SCHEMA

输出结果 “CREATE SCHEMA” 就代表模式创建成功。
接下来我们再创建一个表格:

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

以上命令创建了一个空的表格,我们使用以下 SQL 来查看表格是否创建:

hgdb=# select * from myschema.testable;
 id | name | age | address | salary 
----+------+-----+---------+--------
(0 rows)

删除模式

删除一个为空的模式(其中的所有对象已经被删除):

DROP SCHEMA myschema;

删除一个模式以及其中包含的所有对象:

DROP SCHEMA myschema CASCADE;

以上是关于PostgreSQL 模式(SCHEMA)的主要内容,如果未能解决你的问题,请参考以下文章

6.PostgreSQL模式Schema

PostgreSQL 模式(SCHEMA)

PostgreSQL 模式(SCHEMA)

Spring Boot学习总结(28)—— springboot连接postgresql 指定模式Schema

Spring Boot学习总结(28)—— springboot连接postgresql 指定模式Schema

PostgreSQL学习总结—— PostgreSQL 基于数据库和基于模式(schema)的多租户分析