DB2模式(架構)

DB2 Schema是命名對象的集合,在資料庫中進行邏輯分類。

Schema 叫作架構,也叫模式。

在資料庫中,無法創建具有相同名稱的多個數據庫對象。 為此,架構(Schema)提供了一個組環境。

在資料庫中創建多個模式,也可以在具有相同名稱和不同模式組的多個數據庫對象中創建多個模式。

模式可以包含表,函數,索引,表空間,過程,觸發器等。

例如,employee 資料庫創建兩個名稱為RegularParttime 的模式。

還可以創建兩個具有相同名稱Employee 的不同表,其中一個表存放常規資訊,另一個表存放employee的兼職資訊。 它實際上沒有兩個具有相同名稱的表,這是它們在兩個不同的模式RegularParttime 之下。

它可以方便用戶使用它們而不會遇到任何問題。 當表的命名存在約束時,此功能非常有用。

模式的表示圖 -

獲取當前活動的架構

語法:

db2 values current schema

假設有一個資料庫 - employee ,執行以下命令創建資料庫:

$ db2start
$ db2 CREATE DATABASE employee
$ db2 activate db employee
$ db2 connect to employee

輸出結果如下:

舉個例子來獲取當前的資料庫模式,使用以下命令獲取和更改登錄的當前模式:

db2 values current schema

輸出結果如下:

將另一個模式設置到當前環境

語法:

db2 set schema <SchemaName>

示例:

使用以下命令更改模式架構:

db2 set schema=changed_schema

執行上面命令,如下所示:

驗證更改的模式架構

可以使用以下命令驗證是否已成功更改模式架構:

db2 values current schema

創建一個新的模式架構

語法:

db2 create schema <schema_name> authroization <inst_user>

示例:

創建一個具有不同授權用戶ID的新模式架構。 使用授權用戶:zaixian創建一個名稱為new_schema的模式架構。

db2 create schema new_schema authorization zaixian

創建兩個具有相同名稱但兩個不同模式的不同表。 在這裏,使用兩個不同的模式創建employee表,一個使用Regular模式,另一個使用Parttime模式。

第1步 :創建兩個模式。

模式1:[創建名稱為Regular的模式]

db2 create schema Regular authorization db2inst1

模式2:[創建名稱為Parttime的模式]

db2 create schema Parttime authorization db2inst1

現在可以看到兩個命令都已成功執行。

創建表1 -

db2 "create table Regular.employee (id integer, name varchar(20), job varchar(20), join_date date, salary integer)"

創建表2 -

db2 "create table Parttime.employee (id integer, name varchar(20), job varchar(20), join_date date, salary integer)"

上一篇: DB2表空間 下一篇: DB2數據類型