DB2 模式

17 Mar 2025 | 阅读 2 分钟

DB2 模式是一个在数据库中逻辑分类的命名对象集合。

在数据库中,不可能创建多个同名的数据库对象。为此,模式提供了一个分组环境。

您可以在一个数据库中创建多个模式,也可以创建多个同名的数据库对象,但属于不同的模式组。

一个模式可以包含表、函数、索引、表空间、过程、触发器等。

例如,您可以为 "employee" 数据库创建两个不同的模式,分别命名为 "Regular" 和 "Parttime"。

您还可以创建两个同名的表 "Employee",其中一个表包含常规信息,另一个表包含员工的兼职信息。事实上,它们并不是两个同名的表,而是分别属于两个不同的模式 "Regular" 和 "Parttime"。

它方便用户在不遇到任何问题的情况下使用它们。当对表命名有约束时,此功能非常有用。

模式图像表示

Schema Image representation

获取当前活动模式

语法

我们有一个数据库 "employee"

Schema Image representation

让我们举个例子来获取当前的数据库模式

使用以下命令获取并更改您登录的当前模式

输出

Schema Image representation

将另一个模式设置为当前环境

语法

示例

让我们使用以下命令更改模式

输出

Schema Image representation

验证更改后的模式

您可以使用以下命令验证模式是否已成功更改

Schema Image representation

创建新模式

语法

示例

让我们创建一个新的模式,使用不同的授权用户 ID。创建授权用户为 'sonoo' 的 "new_schema" 模式

输出

Schema Image representation

让我们创建两个同名的表,但属于两个不同的模式。在这里,您创建了员工表,分别属于两个不同的模式,一个用于 Regular,另一个用于 Parttime。

步骤 1:创建两个模式。

模式 1: [创建名为 Regular 的模式]

db2 create schema Regular authorization db2admin

模式 2: [创建名为 Parttime 的模式]

db2 create schema Parttime authorization db2admin

现在您可以看到这两个命令都已成功执行。

Schema Image representation

现在创建两个同名的表,用于员工详细信息

表 1:Regular.employee

 
下一个主题Db2 表空间