PostgreSQL - 模式



模式是表的命名集合。模式还可以包含视图、索引、序列、数据类型、运算符和函数。模式类似于操作系统级别的目录,但模式不能嵌套。PostgreSQL 语句 CREATE SCHEMA 创建模式。

语法

CREATE SCHEMA 的基本语法如下所示:

CREATE SCHEMA name;

其中name是模式的名称。

在模式中创建表的语法

在模式中创建表的语法如下所示:

CREATE TABLE myschema.mytable (
...
);

示例

让我们看看创建模式的示例。连接到数据库testdb并创建模式myschema,如下所示:

testdb=# create schema myschema;
CREATE SCHEMA

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

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

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

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

testdb=# select * from myschema.company;

这将产生以下结果:

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

删除模式的语法

如果模式为空(其中的所有对象都已删除),则使用以下命令删除模式:

DROP SCHEMA myschema;

要删除模式,包括其中包含的所有对象,请使用以下命令:

DROP SCHEMA myschema CASCADE;

使用模式的优势

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

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

  • 第三方应用程序可以放入单独的模式中,以免与其他对象的名称冲突。

广告