OceanBase Developer Center(ODC)は、視覚的な方法でテーブルを作成することをサポートしています。このドキュメントでは、ODCを使用してテーブルを作成する方法について説明します。
背景

上図のように、内部テーブルを作成するには、以下の7つのステップがあります:
基本情報を指定します。
列を設定します。
インデックスを設定します。
制約を設定します。
パーティションルールを設定します。
SQLを確認します。
新規テーブルの作成を完了します。
操作手順
この記事では、SQLウィンドウでデータベースodc_testに従業員テーブルemployeeを作成する例を挙げて説明します。従業員テーブルには、従業員番号(emp_no)、従業員の誕生日(birthday)、従業員名(name)、従業員の性別(gender)の各項目が含まれます。
説明
本文中で使用されているデータはすべてサンプルデータです。実際の状況に応じてデータを置き換えることができます。
ステップ1:基本情報の指定
データベースにログインし、SQL開発ウィンドウに入ったら、左側のナビゲーションペインで テーブル タブをクリックしてテーブルリストを表示します。テーブルリストの右上隅にある + をクリックしてテーブルオブジェクトを作成します。
基本情報 セクションで、テーブル名 を入力し、ストレージモード とテーブルの 説明 を選択します。

ステップ2:列の設定
説明
ODC V4.2.3以降のバージョンでは、OceanBase MySQL/MySQL の空間データ型(GIS)フィールド(列)を含むテーブルの作成をサポートしています。
下図のように、列を追加する際には、以下の情報を指定する必要があります:

説明
- 行をコピーした後、任意の行を選択し、ショートカットキーCommand + V / Ctrl + Vで貼り付けることができます。
- ページ下部の補助編集エリアには、選択された列に関するヒント情報が表示されます。
- 基本情報と列は必須項目で、その他はオプションです。基本情報と列を入力した後、直接送信してSQLによるテーブル作成を確定できます。
ステップ3:インデックスの設定
テーブルに大量のデータが含まれている場合、インデックスを使用してデータのクエリを高速化できます。インデックスは、テーブル内の1列または複数列の値を事前にソートしたデータ構造です。インデックスを使用することで、条件に一致するレコードを直接特定できます。
以下の図のように、以下の情報を指定する必要があります:

ステップ4:制約の設定
制約は、テーブル内のデータルールを定義するために使用されます。制約に違反するデータ操作が存在する場合、その操作は制約によって中止されます。

ODCでサポートされているテーブルレベルの制約は以下の4種類です:
主キー制約:テーブル内の各行データを一意に識別する主キーを定義します。主キー制約は1つのフィールドまたは一連のフィールドにすることができ、1つのテーブルには1つの主キー制約しか設定できません。設定後は編集できません。
一意制約:フィールドまたはフィールドのグループ内のデータがテーブル内で一意であることを保証します。1つのテーブルに複数の一意性制約を設定できます。
外部キー制約:2つのテーブルのデータ間に接続(1列または複数列)を確立し、関連するテーブル間のデータの一貫性と完全性を維持することを目的としています。設定後は新規追加と編集はサポートされません。
CHECK制約:データベースデータを編集する際、設定されたチェックルールに従って検証を行い、検証に合格した場合にのみデータの変更操作を許可します。
ステップ5:パーティションルールの設定

テーブルに大量のデータが含まれている場合、テーブルをパーティション化できます。テーブルをパーティション化すると、テーブル内のデータは複数のテーブル領域に格納され、データのクエリ時には毎回テーブル全体をスキャンする必要がなくなります。ODC V4.3.3以降のバージョンでは、サブパーティションの表示をサポートしています。
OceanBaseのMySQLモードでは、6種類のパーティショニング方法をサポートしています:key、Hash、Range、Range Columns、List、および**List Columns**。
Oracleモードでは、3種類のパーティショニング方法をサポートしています:List、Range、および**Hash**。
ステップ6:SQLの確認

**送信をクリックした後、SQL確認ページでステートメントを確認します。SQLチェックとフォーマット**ステートメントをサポートしており、確認しやすくなっています。
構文は以下のとおりです:
CREATE TABLE table_name (column_name column_type, column_name column_type,.......);
パラメータ説明:
パラメータ |
説明 |
|---|---|
| CREATE TABLE | 指定した名前のテーブルを作成します。テーブルのCREATE権限が必要です。 |
| table_name | テーブルの名前です。テーブル名は識別子の命名規則に準拠する必要があります。 |
| column_name column_type | データテーブル内の各列(フィールド)の名前とデータ型を指定します。複数の列を作成する場合は、カンマで区切ります。 |
ステップ7:新しいテーブルの作成を完了する
実行 をクリックすると、新しいテーブルの作成が完了します。その後、左側のナビゲーションバーのテーブルリストに、新しく作成したemployeeテーブルが表示されます。

説明
左側のナビゲーションバーのテーブルリストで、テーブル名の右側にある「詳細」アイコンをクリックすると、ポップアップ表示される管理操作リスト(テーブル構造の表示、テーブルデータの表示、インポート、エクスポート、ダウンロード、データのシミュレーション、SQLウィンドウの開始、コピー、削除、更新を含む)から、対象オブジェクトを簡単に管理および操作できます。
キーワードSELECTを使用して、新しく作成したテーブルのデータをクエリすることができます。
構文:
SELECT
column_name,
column_name
FROM
table_name [WHERE Clause] [LIMIT N] [ OFFSET M]
パラメータ説明:
パラメータ |
説明 |
|---|---|
| SELECT | SELECTコマンドは、1つまたは複数のレコードを読み取ることができます。 |
| column_name | クエリする列名を指定します。アスタリスク(*)を使用すると、デフォルトですべての列情報をクエリします。 |
| WHERE | 条件ステートメントです。 |
| LIMIT | 実行結果として返すレコード数を設定します。 |
| OFFSET | SELECTステートメントがクエリを開始するデータのオフセット量を指定します。デフォルトではオフセット量は0です。 |
例:
SELECT `emp_no`, `birthdate`, `name`, `gender` FROM `employee`;
