Tous les produits
Search
Centre de documentation

ApsaraDB for OceanBase (Deprecated):Modifier une table

Dernière mise à jour :Aug 09, 2026

Cette rubrique décrit le périmètre de conversion pris en charge pour les opérations DDL ALTER TABLE lors de la migration de données depuis une base de données MySQL vers un locataire MySQL d'OceanBase Database.

Vue d'ensemble

Modifier les attributs de table

Syntaxe

ALTER TABLE tbl_name
    [alter_option [, alter_option] ...]

alter_option: {
    table_options
   | RENAME [TO | AS] new_tbl_name
   | ALGORITHM [=] {DEFAULT | INSTANT | INPLACE | COPY}
   | [DEFAULT] CHARACTER SET [=] charset_name [COLLATE [=] collation_name]
   | CONVERT TO CHARACTER SET charset_name [COLLATE collation_name]
   | {DISCARD | IMPORT} TABLESPACE
   | FORCE
   | LOCK [=] {DEFAULT | NONE | SHARED | EXCLUSIVE}
   | {WITHOUT | WITH} VALIDATION
}

table_option: {
    AUTOEXTEND_SIZE [=] value
  | AUTO_INCREMENT [=] value
  | AVG_ROW_LENGTH [=] value
  | [DEFAULT] CHARACTER SET [=] charset_name
  | CHECKSUM [=] {0 | 1}
  | [DEFAULT] COLLATE [=] collation_name
  | COMMENT [=] 'string'
  | COMPRESSION [=] {'ZLIB' | 'LZ4' | 'NONE'}
  | CONNECTION [=] 'connect_string'
  | {DATA | INDEX} DIRECTORY [=] 'absolute path to directory'
  | DELAY_KEY_WRITE [=] {0 | 1}
  | ENCRYPTION [=] {'Y' | 'N'}
  | ENGINE [=] engine_name
  | ENGINE_ATTRIBUTE [=] 'string'
  | INSERT_METHOD [=] { NO | FIRST | LAST }
  | KEY_BLOCK_SIZE [=] value
  | MAX_ROWS [=] value
  | MIN_ROWS [=] value
  | PACK_KEYS [=] {0 | 1 | DEFAULT}
  | PASSWORD [=] 'string'
  | ROW_FORMAT [=] {DEFAULT | DYNAMIC | FIXED | COMPRESSED | REDUNDANT | COMPACT}
  | SECONDARY_ENGINE_ATTRIBUTE [=] 'string'
  | STATS_AUTO_RECALC [=] {DEFAULT | 0 | 1}
  | STATS_PERSISTENT [=] {DEFAULT | 0 | 1}
  | STATS_SAMPLE_PAGES [=] value
  | TABLESPACE tablespace_name [STORAGE {DISK | MEMORY}]
  | UNION [=] (tbl_name[,tbl_name]...)
}

Opérations prises en charge

  • Renommer des tables.

    alter table tablename rename to new_tablename;
  • Modifier les commentaires de table.

    ALTER TABLE t comment = 'table comment';

Opérations non prises en charge

Important

Si une instruction DDL à synchroniser contient l'une des définitions non prises en charge suivantes, la conversion échoue et renvoie une chaîne vide.

  • Modifier l'attribut ALGORITHM.

    ALTER TABLE t ALGORITHM = COPY;
  • Utiliser CONVERT TO CHARACTER SET.

    ALTER TABLE t CONVERT TO CHARACTER SET utf16;
  • Modifier l'attribut CHARACTER SET ou COLLATE.

    ALTER TABLE T DEFAULT CHARACTER SET utf8;
  • Spécifier l'option DISCARD | IMPORT TABLESPACE.

  • Utiliser ALTER TABLE FORCE.

  • Modifier l'attribut LOCK : LOCK = DEFAULT | NONE | SHARED | EXCLUSIVE.

  • Utiliser ALTER TABLE WITHOUT | WITH VALIDATION.

  • Modifier des attributs autres que COMMENT dans table_option. Pour plus d'informations, consultez la définition de table_option dans la section Syntaxe de cette rubrique.