SQLコンソールは、視覚的な方法でテーブルを作成することをサポートしています。本記事では、SQLウィンドウを使用してテーブルを作成する方法について説明します。
背景

上図のように、テーブルの作成には以下の7つのステップが含まれます:
基本情報を指定します。
列を設定します。
インデックスを設定します。
制約を設定します。
パーティションルールを設定します。
SQLを確認します。
テーブルの作成を完了します。
本記事では、テーブルの作成を例に、SQLウィンドウ内でデータベースodc_testに従業員テーブルを作成する方法を紹介します。従業員テーブルには、従業員番号(emp_no)、従業員の誕生日(birthday)、従業員名(name)、従業員の性別(gender)の列が含まれます。
説明
本文中で使用されているデータはすべて例です。実際の状況に応じてデータを置き換えることができます。
前提条件
現在のテナントのデータベースアカウントとパスワードを使用してSQLコンソールにログインしていること。
操作手順
ステップ1:基本情報の指定
SQLコンソールにログインし、SQLウィンドウに入ったら、左側のデータベースリストで テーブル タブをクリックしてテーブルリストを表示します。テーブルリストの右上隅にある + をクリックして、必要なオブジェクトであるテーブルを作成します。
基本情報 セクションで、テーブル名 とテーブルの 説明 を入力します。

説明
- MySQLモードでは、デフォルトの文字セットとデフォルトのソート規則も選択する必要があります。
- 基本情報の指定と列の設定への切り替えを完了すると、基本情報の確認と送信が完了したことになります。
ステップ2:列の設定
以下の図のように、列を追加する際は、以下の情報を指定する必要があります:

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

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

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

テーブルに大量のデータが含まれている場合、テーブルをパーティション化できます。テーブルをパーティション化すると、テーブル内のデータは複数のテーブル領域に保存され、データのクエリ時には毎回テーブル全体をスキャンする必要がなくなります。
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テーブルが表示されます。
キーワード 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`;
左側のデータベースリストで、テーブル名の右側にあるメニューアイコンをクリックし、表示される管理操作リスト(テーブル構造の表示、テーブルデータの表示、ダウンロード、 SQLウィンドウを開く、コピー、削除、および 更新)を使用して、ターゲットオブジェクトを簡単に管理および操作できます。テーブルの機能については、SQLコンソールの機能キー一覧をご参照ください。
操作キー |
説明 |
|---|---|
| テーブル構造の表示 | テーブルのプロパティタブに移動し、テーブルの基本情報、列、インデックス、制約、DDLなどの情報をすべて確認します。 |
| テーブルデータの表示 | データタブに移動し、テーブル内のデータを確認します。 |
| ダウンロード | テーブルオブジェクトのSQLファイルをダウンロードします。 |
| コピー | テーブル名、SELECTステートメント、INSERTステートメント、UPDATEステートメント、またはDELETEステートメントをコピーします。 |
| 削除 | 現在のテーブルオブジェクトを削除します。 |
| 更新 | 現在のテーブルオブジェクトに対して管理操作を行った後、構造ツリーを更新して最新の情報を表示します。 |