📜  PostgreSQL创建模式

📅  最后修改于: 2020-11-30 07:50:29             🧑  作者: Mango

PostgreSQL创建架构

在本节中,我们将学习如何在pgAdmin 4和SQL shell(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;

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

Parameters Description
Create Schema Create schema is a keyword, which is used to create a new schema in the database.
Schema_Name This parameter is used to describe the name of the schema, and the schema name should be exclusive in the existing database.
If not exists This is an optional parameter, and it is used to create a new schema only if it does not occur.
Or
If we are trying to create a new schema without using the IF NOT EXISTS option, which is already present, it will produce an error.

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

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

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

步骤1

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

第2步

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

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

第三步

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

第四步

  • 扩展javatpoint数据库后,我们可以看到Schemas
  • 之后,对于创建模式,我们将右键单击Schemas选项,然后选择Create,然后从列表中单击schema选项。

步骤5

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

步骤6

  • 一旦单击“保存”按钮,就创建了myschema,如以下屏幕截图所示:

在psql中创建架构

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

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

PostgreSQL在模式中创建表

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

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

在pgAdmin模式中创建表

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

步骤1

  • 首先,我们正在扩展新创建的模式myschema,我们可以看到myschema包含以下内容:
    • 归类
    • 桌子
    • 顺序
    • 职能
    • 程序
    • 种类
    • 查看等等。

第2步

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

第三步

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

第四步

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

  • 我们可以看到Student表是在Table下创建的

在psql模式中创建表

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

在模式中创建表的语法

在模式中创建表的常规语法如下:

CREATE TABLE Schema_name.Table_name (
);

上面的语法中使用以下参数:

Parameters Description
Create table Create table is a keyword, which is used to create a table in the existing schema.
Schema_name It is used to specify the current schema name.
Table_name It is used to describe the name of the table, and the table name should be unique in the existing schema.
  • 以下命令用于在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)
);

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

输出量

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