PostgreSQL 创建模式


PostgreSQL 创建模式

在本节中,我们将学习如何在 pgAdmin 4 和SQLshell(psql)中的模式命令中创建模式和创建表。

在 PostgreSQL 中,Schema 是一个命名空间,它提供了各种对象,例如数据类型、索引、表、运算符、视图、序列和函数。create 语句提供了准确的对象名称,这有助于我们在现有模式中创建对象。

在 PostgreSQL 中创建模式

CREATE SCHEMA语句用于创建一个新的模式到现有的数据库。此语句可以包含用于在新模式中创建对象的子命令。并且模式名称应该与现有数据库中任何当前模式的名称不同。

在PostgreSQL 中,我们可以通过两种不同的方式创建模式:

  • 在 pgAdmin 4 中创建架构
  • 在 psql 中创建模式

注意:CREATE SCHEMA 命令用于创建模式,不能嵌套。

创建模式的语法

CREATE SCHEMA schema_name;    
Or  
CREATE SCHEMA [IF NOT EXISTS] schema_name;

我们在上述语法中使用了以下参数:

参数 描述
Create Schema Create schema 是一个关键字,用于在数据库中创建一个新的 schema。
Schema_Name 该参数用于描述schema的名称,schema名称在现有数据库中应该是独占的。
If not exists 这是一个可选参数,仅当它不发生时才用于创建新模式。 或者, 如果我们尝试在不使用已经存在的IF NOT EXISTS 选项的情况下创建新模式,则会产生错误。

注意:要实现 create schema 命令,我们应该在现有数据库中具有 CREATE 权限。

在 pgAdmin 4 中创建架构 [图形用户界面]

在此,我们将在最新版本的 pgAdmin 中创建模式。我们需要按照以下步骤来创建架构:

步骤1

  • 首先,在我们的本地系统中打开pgAdmin并将PostgreSQL连接到 localhost 服务器。

PostgreSQL 创建模式

第2步

  • 之后,我们将通过单击向下箭头图标展开数据库,如下面的屏幕截图所示:

PostgreSQL 创建模式

  • 在上图中,我们可以看到 PostgreSQL 中有两个可用的数据库。在这里,我们采用第一个数据库,即javatpoint

Step3

  • 现在,我们将扩展数据库javatpoint

PostgreSQL 创建模式

第四步

  • 一旦我们展开 javatpoint 数据库,我们就可以看到Schemas
  • 之后,为了创建架构,我们将右键单击架构选项,然后选择创建,然后从列表中单击架构选项。

PostgreSQL 创建模式

第五步

  • 单击架构后,屏幕上将出现Create-schema窗口,我们将在其中提供所有必要的详细信息,例如Name等,然后单击Save

PostgreSQL 创建模式

第六步

  • MYSCHEMA已创建一旦我们点击保存按钮,如图所示下面的截图:

PostgreSQL 创建模式

在 psql 中创建模式

  • 首先,我们将连接到javatpoint数据库,并在以下命令的帮助下创建一个新模式作为 Jtp:
javatpoint=# create schema jtp;  
CREATE SCHEMA

PostgreSQL 创建模式

  • 消息CREATE SCHEMA指示模式已成功创建。
  • 要检查模式是否已创建,我们可以执行以下命令:
Javatpoint=#\dn
  • 执行上述命令后,我们可以在下面的屏幕截图中看到模式列表:

PostgreSQL 创建模式

PostgreSQL 在 Schema 中创建表

在这里,我们将在特定模式(我们在本节前面创建)中创建一个表。在 PostgreSQL 中,我们可以通过两种不同的方式在模式中创建表:

  • 在 pgAdmin 模式中创建一个表
  • 在 psql 模式中创建一个表

在 pgAdmin 模式中创建一个表

在 pgAdmin 中完成创建架构后,我们将在特定架构中创建一个表。为此,我们将遵循以下步骤:

步骤1

  • 首先,我们对新创建的schema

    myschema

    进行扩展可以看到myschema包含如下内容:

    • Collations
    • Tables
    • Sequences
    • Functions
    • Procedure
    • Types
    • View and so on.

PostgreSQL 创建模式

第2步

  • 现在,我们将右键单击myschema下的Tables选项,我们将从给定的下拉列表中选择Create选项,然后单击Table,如下图所示:

PostgreSQL 创建模式

Step3

  • 单击表格选项后,屏幕上将出现创建表格窗口,我们将在其中输入所有必要的详细信息,例如表格名称。在我们的例子中,我们将创建一个名为Student的表。

PostgreSQL 创建模式

第四步

  • 之后,我们将移至同一窗口中的“列”选项卡,然后单击+号以在特定表中添加列。
  • 我们可以从给定的下拉列表中选择数据类型,也可以更改列Not-null首选项并设置Primary key
  • 然后单击“保存”以完成创建表的过程,如下面的屏幕截图所示:

PostgreSQL 创建模式

  • 并且我们可以看到在Table下面创建了Student**表**

PostgreSQL 创建模式

在 psql 模式中创建一个表

现在,我们将在上面创建的 psql 模式中创建一个表。但首先,我们将看到在 psql 模式中创建表的语法。

在 Schema 中创建表的语法

在模式中创建表的一般语法如下:

CREATE TABLE Schema_name.Table_name (  
);

上述语法中使用了以下参数:

参数 描述
Create table Create table 是一个关键字,用于在现有模式中创建表。
Schema_name 它用于指定当前模式名称。
Table_name 用于描述表名,表名在现有模式中应该是唯一的。
  • 以下命令用于在 psql 模式中创建表:
javatpoint=# create table jtp.Employee(   
Emp_ID  INT NOT NULL,   
Emp_NAME VARCHAR (25)  NOT NULL,   
Emp_AGE  INT NOT NULL,   
Emp_ADDRESS  CHAR (30),   
Emp_SALARY   Real,   
PRIMARY KEY (Emp_ID)  
);

PostgreSQL 创建模式

  • 上面的命令将创建一个空表。我们可以在以下命令的帮助下检查创建的表:
javatpoint=# select * from jtp.Employee;

输出

以下屏幕截图将显示上面创建的表的结果:

PostgreSQL 创建模式