Cette rubrique décrit les incompatibilités entre les bases de données MySQL et les locataires MySQL d'OceanBase Database lors de la modification du type d'une colonne sous contrainte. Ces incompatibilités varient selon la contrainte appliquée.
Dans les tableaux suivants, une cellule vide dans la colonne « Type » indique que ce type n'est pas pris en charge par la contrainte correspondante, un tiret (-) signifie « Sans objet » (N/A) et « All » désigne tous les types.
Modifier le type d'une colonne PRIMARY KEY
Le tableau ci-dessous présente les types cibles vers lesquels il est possible de modifier une colonne PRIMARY KEY en exécutant l'instruction DDL ALTER TABLE table_name MODIFY/CHANGE COLUMN dans une base de données MySQL et dans un locataire MySQL d'OceanBase Database.
|
Type de colonne dans une base de données MySQL |
Type cible pris en charge |
Type de colonne dans un locataire MySQL d'OceanBase Database |
Type cible pris en charge |
|
INT |
All |
INTEGER |
- |
|
TINYINT |
All |
TINYINT |
BOOLEAN |
|
SMALLINT |
All |
SMALLINT |
- |
|
MEDIUMINT |
All |
MEDIUMINT |
- |
|
BIGINT |
All |
BIGINT |
- |
|
BOOL |
All |
BOOLEAN |
TINYINT |
|
DECIMAL |
All |
DECIMAL |
- |
|
NUMERIC |
All |
NUMERIC |
- |
|
REAL |
All |
FLOAT |
- |
|
DOUBLE |
All |
DOUBLE |
- |
|
FLOAT |
All |
FLOAT |
- |
|
BIT |
All |
BIT |
- |
|
CHAR |
All |
CHAR |
- |
|
NCHAR |
All |
CHAR |
- |
|
VARCHAR |
All |
VARCHAR |
- |
|
BINARY |
All |
BINARY |
- |
|
VARBINARY |
All |
VARBINARY |
- |
|
LONG VARBINARY |
All |
||
|
YEAR |
All |
YEAR |
- |
|
DATE |
All |
DATE |
- |
|
TIME |
All |
TIME |
- |
|
TIMESTAMP |
All |
TIMESTAMP |
- |
|
DATETIME |
All |
DATETIME |
- |
|
TINYBLOB |
All |
||
|
MEDIUMBLOB |
All |
||
|
BLOB |
All |
||
|
LONGBLOB |
All |
||
|
TINYTEXT |
All |
||
|
MEDIUMTEXT |
All |
||
|
TEXT |
All |
||
|
LONGTEXT |
All |
||
|
ENUM |
All |
ENUM |
- |
|
SET |
All |
SET |
- |
|
JSON |
All |
Modifier le type d'une colonne UNIQUE KEY
Si une colonne UNIQUE KEY est d'un type répertorié dans le tableau précédent, les types cibles disponibles lors de l'exécution de l'instruction DDL ALTER TABLE table_name MODIFY/CHANGE COLUMN dans une base de données MySQL et dans un locataire MySQL d'OceanBase Database sont identiques à ceux d'une colonne PRIMARY KEY.
Modifier le type d'une colonne KEY
Si une colonne KEY est d'un type répertorié dans le tableau précédent, les types cibles disponibles lors de l'exécution de l'instruction DDL ALTER TABLE table_name MODIFY/CHANGE COLUMN dans une base de données MySQL et dans un locataire MySQL d'OceanBase Database sont identiques à ceux d'une colonne PRIMARY KEY.
Modifier le type d'une colonne FOREIGN KEY
Si une colonne FOREIGN KEY est d'un type répertorié dans le tableau précédent, les types cibles disponibles lors de l'exécution de l'instruction DDL ALTER TABLE table_name MODIFY/CHANGE COLUMN dans une base de données MySQL et dans un locataire MySQL d'OceanBase Database sont identiques à ceux d'une colonne PRIMARY KEY.
Modifier le type d'une colonne indexée FULLTEXT
Le tableau ci-dessous présente les types cibles vers lesquels il est possible de modifier une colonne indexée FULLTEXT en exécutant l'instruction DDL ALTER TABLE table_name MODIFY/CHANGE COLUMN dans une base de données MySQL et dans un locataire MySQL d'OceanBase Database.
|
Type de colonne dans une base de données MySQL |
Type cible pris en charge |
Type de colonne dans un locataire MySQL d'OceanBase Database |
Type cible pris en charge |
|
CHAR |
All |
CHAR |
- |
|
VARCHAR |
All |
VARCHAR |
- |
|
TINYTEXT |
All |
TINYTEXT |
- |
|
MEDIUMTEXT |
All |
MEDIUMTEXT |
- |
|
TEXT |
All |
TEXT |
- |
|
LONGTEXT |
All |
LONGTEXT |
- |
|
BINARY |
- |
||
|
VARBINARY |
- |
||
|
NCHAR |
All |
CHAR |
- |
|
JSON |
All |