すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB for OceanBase (Deprecated):列の作成

最終更新日:Jan 19, 2025

このトピックでは、MySQL データベースから OceanBase Database の MySQL テナントへのデータ移行中に列を作成するための CREATE TABLE DDL 操作のサポートされている変換範囲について説明します。

構文

create_definition: 
    col_name column_definition

column_definition: {
    data_type [NOT NULL | NULL] [DEFAULT {literal | (expr)} ]
      [VISIBLE | INVISIBLE]
      [AUTO_INCREMENT] [UNIQUE [KEY]] [[PRIMARY] KEY]
      [COMMENT 'string']
      [COLLATE collation_name]
      [COLUMN_FORMAT {FIXED | DYNAMIC | DEFAULT}]
      [ENGINE_ATTRIBUTE [=] 'string']
      [SECONDARY_ENGINE_ATTRIBUTE [=] 'string']
      [STORAGE {DISK | MEMORY}]
      [reference_definition]
      [check_constraint_definition]
  | data_type
      [COLLATE collation_name]
      [GENERATED ALWAYS] AS (expr)
      [VIRTUAL | STORED] [NOT NULL | NULL]
      [VISIBLE | INVISIBLE]
      [UNIQUE [KEY]] [[PRIMARY] KEY]
      [COMMENT 'string']
      [reference_definition]
      [check_constraint_definition]
}

サポートされている操作

  • データ型を変換します。サポートされているデータ型の詳細については、「データ型の変換」をご参照ください。

  • NULL または NOT NULL 属性を指定します。

  • DEFAULT 属性を指定します。定数または関数を使用できます。

  • VISIBLE または INVISIBLE 属性を指定します。

  • AUTO_INCREMENT を指定します。

  • COMMENT を指定します。

  • COLLATE を指定します。

  • 生成列を指定し、その列に VIRTUAL または STORED 属性を指定します。

  • UNIQUE KEY、PRIMARY KEY、または KEY 属性を指定します。詳細については、「インデックスまたは制約の作成」をご参照ください。

  • CHECK 制約を指定します。詳細については、「インデックスまたは制約を作成する」をご参照ください。

    重要

    この DDL 操作は、OceanBase Database V3.2.3 以降のバージョンの MySQL テナントでのみサポートされています。

  • 外部キーを指定します。詳細については、「インデックスまたは制約の作成」をご参照ください。

無視される句とオプション

説明

同期された DDL 文で指定された場合、次の句とオプションは無視され、解決または変換されません。

  • COLUMN_FORMAT

  • ENGINE_ATTRIBUTE

  • SECONDARY_ENGINE_ATTRIBUTE

  • STORAGE

制限

重要

MySQL テナントの OceanBase Database の制限により、同期された DDL 文が OceanBase Database の MySQL テナントで変換および実行されたときに、次のシナリオでエラーが返される場合があります。

  • MySQL テナントの OceanBase Database は、DEFAULT 属性で特定の関数または式を指定することをサポートしていません。

  • MySQL テナントの OceanBase Database は、生成列で特定の関数または式を指定することをサポートしていません。

  • MySQL テナントの OceanBase Database は、特定のフィールド型に対して UNIQUE KEY、PRIMARY KEY、または KEY 属性を指定することをサポートしていません。

  • MySQL テナントの OceanBase Database は、特定の照合順序をサポートしていません。