Todos los productos
Search
Centro de documentos

ApsaraDB for OceanBase (Deprecated):Crear una tabla

Última actualización: Sep 07, 2026

Este tema describe el alcance de conversión compatible de las operaciones DDL CREATE TABLE durante la migración de datos desde una base de datos MySQL hacia un inquilino MySQL de OceanBase Database.

Sintaxis

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
(create_definition,...)   
[table_options]
[partition_options]

Sintaxis

Descripción

create_definition

Permite crear una columna, un índice o una restricción. Para obtener más información, consulte Create a column y Create an index or a constraint.

table_options

Para obtener más información, consulte table_options después de esta sección.

partition_options

Para obtener más información, consulte Create a partition.

  • Cuando utilice la instrucción CREATE TABLE para crear una tabla, especifique las palabras clave IF NOT EXISTS y la opción LIKE. Ejemplo:

    CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
    { LIKE old_tbl_name | (LIKE old_tbl_name) }
  • Esta instrucción no permite crear tablas temporales. La palabra clave TEMPORARY se ignorará.

    Nota

    En los inquilinos MySQL de OceanBase Database V3.2.3 sí es posible crear tablas temporales.

  • No utilice la instrucción CREATE TABLE AS SELECT para crear una tabla a partir del conjunto de resultados de una instrucción SELECT. En este escenario, la salida será una cadena vacía.

table_options

  • Es posible especificar comentarios en la tabla.

  • También puede especificar CHARACTER SET.

  • El resto de las opciones de tabla no se analizan sintácticamente y se ignoran.

A continuación se muestra un código de ejemplo que detalla las opciones de tabla:

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]...)
}

Límites

Importante

Debido a los límites de los inquilinos MySQL de OceanBase Database, es posible que se devuelva un error cuando las instrucciones DDL sincronizadas se convierten y ejecutan en un inquilino MySQL de OceanBase Database en los siguientes escenarios:

  • Los inquilinos MySQL de OceanBase Database admiten un número limitado de conjuntos de caracteres.

  • No utilice conjuntos de caracteres no compatibles, como Latin-1. Si establece de forma forzada un conjunto de caracteres no compatible para un inquilino MySQL de OceanBase Database, dicho conjunto no se convertirá durante la sincronización DDL hacia la base de datos de destino y se devolverá un error.