OceanBase 新建表

2021-06-30 11:59 更新

在 OceanBase 開發(fā)者中心(OceanBase Developer Center,ODC)單擊連接名進入連接后,在左導航欄中單擊  標簽可以查看表列表。在表列表的右上角,單擊 + 創(chuàng)建表,或是在上方導航欄中單擊 新建 以創(chuàng)建您需要的對象。如下圖所示,創(chuàng)建表有以下 6 個步驟:

  1. 設置基本信息。
  2. 設置列。
  3. 設置分區(qū)規(guī)則(可選)。
  4. 設置索引(可選)。
  5. 設置約束(可選)。
  6. 單擊 提交 按鈕,等待表生成。

設置基本信息

指定 表名稱 和表的 描述(可選)。在 MySQL 模式下還需要指定 默認字符集 和 默認排序規(guī)則。

OceanBase新建表

設置列

設置列是創(chuàng)建表的第二步,如下圖所示,添加一列時您需要指定以下信息:

信息項

說明

字段名稱

指定字段(列)的名稱。

數(shù)據(jù)類型

指定字段(列)的數(shù)據(jù)類型。

主鍵

是否指定該字段(列)為主鍵。

非空

是否限制該字段(列)的值不能為空。

缺省值

該字段(列)的默認值。

字段注釋

對該字段的說明。

設置列頁面還提供了三個功能鍵:

  • 新建:添加一下新字段。
  • 編輯:對選定的字段進行編輯或直接雙擊單元格進行編輯。
  • 刪除:刪除當前選中的字段。

OceanBase新建表

設置分區(qū)規(guī)則

設置分區(qū)規(guī)則是創(chuàng)建表的第三步。OceanBase 中 MySQL 模式支持六種分區(qū)方法:keyHash、Range、Range_colums、List 和 List_columns。Oracle 模式支持三種分區(qū)方法:ListRange 和 Hash。您也可以選擇 None 以省略分區(qū)設置。

由于在 MySQL 模式和 Oracle 模式下分區(qū)的定義不同,所以以下信息在不同模式下的意義略有不同,請根據(jù)您選擇的分區(qū)方法按其定義指定以下信息:

信息項

說明

分區(qū)方法

指定分區(qū)方法。MySQL 模式和 Oracle 模式下支持的分區(qū)方法不同。

字段

選擇的字段將成為分區(qū)鍵。

表達式

根據(jù)表達式的返回值進行分區(qū)(Oracle 模式不支持分區(qū)表達式)。

分區(qū)

根據(jù)您選擇的 分區(qū)方法,您可能需要指定 分區(qū)名稱、分區(qū)數(shù)量、區(qū)間上限值 或 值枚舉 等信息。您可以添加多個分區(qū),并拖動它們進行排序。

OceanBase新建表

設置索引

設置索引是創(chuàng)建表的第四步,如下圖所示,您需要指定以下信息:

信息項

說明

索引名

為改索引指定的名字。

索引范圍

默認值是 GLOBAL(全局索引),只有設置了分區(qū)的表才可以指定索引范圍是否為 LOCAL(局部索引)。

索引類型

索引類型目前只支持 BTree。

可選字段

在哪些列上建索引,要注意索引列的順序。

唯一

是否唯一索引,即通過索引的方式保證唯一性約束。

設置索引頁面還提供了三個功能鍵:
  • 新建:添加一下新索引。
  • 編輯:對選定的索引進行編輯或直接雙擊單元格進行編輯。
  • 刪除:刪除當前選中的索引。

OceanBase新建表

設置約束

設置約束是創(chuàng)建表的第五步,ODC 中支持設置的表級約束有以下 4 種:

  • 主鍵約束:定義一個主鍵來唯一標識表中的每一行數(shù)據(jù)。主鍵約束可以是一個字段或是一組字段,一張表中只能設置一個主鍵約束,且設置完成后不支持編輯。
  • 唯一約束:保證在一個字段或者一組字段里的數(shù)據(jù)在表中是唯一的,一張表中可以設置多個唯一約束。
  • 外鍵約束:在兩個表的數(shù)據(jù)之間建立連接,它可以是一列或者多列,主要作用是保持關聯(lián)表之間數(shù)據(jù)的一致性、完整性。設置完成后不支持新增和編輯。
  • 檢查約束:在編輯數(shù)據(jù)庫數(shù)據(jù)時,按照設置的檢查規(guī)則進行校驗,校驗通過才允許數(shù)據(jù)修改操作。檢查約束 僅在 Oracle 模式下支持。

由于 OceanBase 數(shù)據(jù)庫中 MySQL 模式和 Oracle 模式支持的約束不同,而不同約束所需的信息也略有不同,所以請根據(jù)您選擇的約束方法按頁面上的要求指定所需信息:

信息項

說明

約束名稱

指定約束的名稱。

列信息

選擇一個字段或是一組字段作為約束。

是否啟用

指定創(chuàng)建的約束是否生效。有些情況下,您可能需要約束暫不生效,例如導入大量數(shù)據(jù)時,通過禁用約束可提高效率。

可延遲狀態(tài)

支持設置三種延遲狀態(tài) 立即驗證、不可延遲 和 延遲驗證。

關聯(lián)schema(Oracle模式下)

使用 外鍵約束 時需指定關聯(lián)表(父表)所在的 Schema。

關聯(lián)數(shù)據(jù)庫(MySQL模式下)

使用 外鍵約束 時需指定關聯(lián)表(父表)所在的數(shù)據(jù)庫。

關聯(lián)表

使用 外鍵約束 時需指定關聯(lián)表(父表)。

關聯(lián)字段

使用 外鍵約束 時需指定關聯(lián)表(父表)。

刪除

指定當關聯(lián)表(父表)中的數(shù)據(jù)被刪除時,當前表(子表)對應的動作。可以指定 CASCADE、NOACTIONRESTRICT 和 SETNULL 等 4 種對應的動作。

更新

指定當關聯(lián)表(父表)中的數(shù)據(jù)被更新時,當前表(子表)對應的動作??梢灾付?nbsp;CASCADE、NOACTION、RESTRICT 和 SETNULL 等 4 種對應的動作。

檢查條件

指定執(zhí)行 檢查約束 時校驗數(shù)據(jù)的檢查規(guī)則。

OceanBase新建表

設置約束頁面還提供了三個功能鍵:

  • 新建:添加一下新約束。
  • 編輯:對選定的約束進行編輯或直接雙擊單元格進行編輯。
  • 刪除:刪除當前選中的約束。


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號