本文為您介紹遷移 MySQL 資料庫的資料至 OceanBase 資料庫 MySQL 租戶時,MySQL 資料庫執行的 CREATE TABLE DDL 支援被資料轉送的 DDL 同步群組件轉換,但 OceanBase 資料庫 MySQL 租戶不支援執行的情境。
在產生列的基礎上再定義產生列
通過 CREATE TABLE DDL 定義產生列時,運算式中使用了其它產生列。
MySQL 資料庫:支援。
OceanBase 資料庫 MySQL 租戶:不支援。
樣本如下:
CREATE TABLE group_by_t1
(a INT GENERATED ALWAYS AS (1) VIRTUAL,
b INT GENERATED ALWAYS AS (a) VIRTUAL,
c INT GENERATED ALWAYS AS (1) VIRTUAL);
建立索引或約束
建立約束時,MySQL 資料庫和 OceanBase 資料庫 MySQL 租戶對於列的類型限制有所不同,詳情請參見 建立索引或約束支援的欄位類型。
建立外鍵約束的使用限制:
OceanBase 資料庫 MySQL 租戶:父表列需要存在 UNIQUE、PRIMARY 約束可以添加外鍵。
父表列是指外鍵約束中指定的父表中的被引用列(referenced column)。
MySQL 資料庫:父表列需要存在任意一種 UNIQUE、PRIMARY、普通鍵約束可以添加外鍵。