MariaDB: crear declaración de tabla

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

MariaDB: crear declaración de tabla

Este tutorial de MariaDB explica cómo usar MariaDB crear declaración de tabla Con sintaxis y ejemplos.

describir

La instrucción CREATE TABLE de MariaDB le permite crear y definir tablas.

sintaxis

La forma más simple de la instrucción CREATE TABLE en MariaDB es:

CREATE TABLE table_name
( 
  column1 datatype [ NULL | NOT NULL ],
  column2 datatype [ NULL | NOT NULL ],
  ...
);

Sin embargo, la sintaxis completa de la instrucción CREATE TABLE de MariaDB es:

CREATE [ OR REPLACE ] [ TEMPORARY ] TABLE [IF NOT EXISTS] table_name
( 
  column1 datatype [ NULL | NOT NULL]
                   [ DEFAULT default_value ]
                   [ AUTO_INCREMENT ]
                   [ UNIQUE KEY | PRIMARY KEY ]
                   [ COMMENT 'string' ],

  column2 datatype [ NULL | NOT NULL]
                   [ DEFAULT default_value ]
                   [ AUTO_INCREMENT ]
                   [ UNIQUE KEY | PRIMARY KEY ]
                   [ COMMENT 'string' ],
  ...

  | [CONSTRAINT [constraint_name]] PRIMARY KEY [ USING BTREE | HASH ] (index_col_name, ...)

  | [INDEX | KEY] index_name [ USING BTREE | HASH ] (index_col_name, ...)

  | [CONSTRAINT [constraint_name]] UNIQUE [ INDEX | KEY ] 
        [ index_name ] [ USING BTREE | HASH ] (index_col_name, ...)

  | {FULLTEXT | SPATIAL} [ INDEX | KEY] index_name (index_col_name, ...)

  | [CONSTRAINT [constraint_name]] 
        FOREIGN KEY index_name (index_col_name, ...)
        REFERENCES another_table_name (index_col_name, ...)
        [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
        [ ON DELETE { RESTRICT | CASCADE | SET NULL | NO ACTION } ]
        [ ON UPDATE { RESTRICT | CASCADE | SET NULL | NO ACTION } ]

  | CHECK (expression)

    {ENGINE | TYPE} = engine_name
  | AUTO_INCREMENT = value
  | AVG_ROW_LENGTH = value
  | [DEFAULT] CHARACTER SET = charset_name
  | CHECKSUM = {0 | 1}
  | [DEFAULT] COLLATE = collation_name
  | COMMENT = 'string'
  | DATA DIRECTORY = 'absolute path'
  | DELAY_KEY_WRITE = { 0 | 1 }
  | INDEX DIRECTORY = 'absolute path'
  | INSERT_METHOD = { NO | FIRST | LAST }
  | MAX_ROWS = value
  | MIN_ROWS = value
  | PACK_KEYS = {0 | 1 | DEFAULT}
  | PASSWORD = 'string'
  | RAID_TYPE = { 1 | STRIPED | RAIDO }
       RAID_CHUNKS = value
       RAID_CHUNKSIZE = value
  | ROW_FORMAT = {DEFAULT | DYNAMIC | FIXED | COMPRESSED}
  | UNION = (table1, ... )
);

parámetro o parámetro

o reemplazar opcional. Si la tabla ya existe, la definición de la tabla será reemplazada por esta nueva instrucción CREATE TABLE. Temporal opcional. Especifica que la tabla es una tabla temporal. Opcional si no está presente. Si se especifica, la instrucción CREATE TABLE no generará un error si la tabla ya existe. table_name El nombre de la tabla que desea crear. column1, column2 Las columnas que desea crear en la tabla.tipo de datos

El tipo de datos de la columna, que puede ser uno de los siguientes:

valor
personaje [ (length) ] [ CHARACTER SET charset_name ] [ COLLATE collation_name ]
VARCHAR [ (length) ] [ CHARACTER SET charset_name ] [ COLLATE collation_name ]
binario [ (length) ]
VARBINARIO (longitud)
fecha
hora
marca de tiempo
fecha y hora
año
pequeño sonido [ (length) ] [ UNSIGNED ] [ ZEROFILL ]
PHS [ (length) ] [ UNSIGNED ] [ ZEROFILL ]
medio [ (length) ] [ UNSIGNED ] [ ZEROFILL ]
EN T [ (length) ] [ UNSIGNED ] [ ZEROFILL ]
entero [ (length) ] [ UNSIGNED ] [ ZEROFILL ]
entero grande [ (length) ] [ UNSIGNED ] [ ZEROFILL ]
verdadero [ (length, decimals) ] [ UNSIGNED ] [ ZEROFILL ]
doble [ (length, decimals) ] [ UNSIGNED ] [ ZEROFILL ]
flotador [ (length, decimals) ] [ UNSIGNED ] [ ZEROFILL ]
decimal [ (length, [ decimals ]) ] [ UNSIGNED ] [ ZEROFILL ]
número [ (length, [ decimals ]) ] [ UNSIGNED ] [ ZEROFILL ]
pequeña mota
lugar
bloque medio
bloque largo
texto pequeño [ BINARY ] [ CHARACTER SET charset_name ] [ COLLATE collation_name ]
texto [ BINARY ] [ CHARACTER SET charset_name ] [ COLLATE collation_name ]
texto chino [ BINARY ] [ CHARACTER SET charset_name ] [ COLLATE collation_name ]
ensayo largo [ BINARY ] [ CHARACTER SET charset_name ] [ COLLATE collation_name ]
enumeración (valor1, valor2, …) [ CHARACTER SET charset_name ] [ COLLATE collation_name ]

NULL o NOT NULL Cada columna debe definirse como NULL o NOT NULL. Si se omite este parámetro, la base de datos asume NULL como valor predeterminado. DEFAULT valor_predeterminado Opcional. Si se deja en blanco o NULL, es el valor asignado a la columna. AUTO_INCREMENT Opcional. Establece la columna como un campo autonumérico. nombre_restricción El nombre de la restricción si define una clave principal, una restricción única o una clave externa. index_col_name

Es la siguiente sintaxis:

column_name [ (length) ] [ ASC | DESC ]

notas

  • Solo puede haber una columna en la tabla establecida en AUTO_INCREMENT, y esa columna debe ser la clave principal.

ejemplo

Veamos un ejemplo de CREATE TABLE de MariaDB.

CREATE TABLE websites
( website_id INT(11) NOT NULL AUTO_INCREMENT,
  website_name VARCHAR(25) NOT NULL,
  server_name VARCHAR(20),
  creation_date DATE,
  CONSTRAINT websites_pk PRIMARY KEY (website_id)
);

Este ejemplo de MariaDB CREATE TABLE crea una tabla llamada sitio web con 4 columnas y una clave principal:

  • La primera columna, denominada website_id, se crea como un tipo de datos INT (longitud máxima de 11 bits) y no puede contener valores NULL. Está configurado en un campo AUTO_INCREMENT, lo que significa que es un campo de numeración automática (comienza en 1 y se incrementa en 1, a menos que se especifique lo contrario).
  • La segunda columna, llamada website_name, es un tipo de datos VARCHAR (hasta 25 caracteres) y no puede contener valores NULL.
  • La tercera columna, denominada server_name, es un tipo de datos VARCHAR (hasta 20 caracteres) y puede contener valores NULL.
  • La cuarta columna se llama Creation_date, que es un tipo de datos de FECHA y puede contener valores NULL.
  • La clave principal se llama website_pk y se establece en la columna website_id.

A continuación, creemos una tabla en MariaDB con valores predeterminados.

CREATE TABLE pages
( page_id INT(11) NOT NULL AUTO_INCREMENT,
  website_id INT(11) NOT NULL,
  host_name VARCHAR(45) NOT NULL DEFAULT 'TBD',
  CONSTRAINT pages_pk PRIMARY KEY (page_id)
);

Este ejemplo de MariaDB CREATE TABLE crea una tabla denominada páginas con 3 columnas y una clave principal:

  • La primera columna, llamada page_id, se crea como tipo de datos INT (máximo 11 bits de longitud) y no puede contener valores NULL. Se establece en el campo AUTO_INCREMENT.
  • La segunda columna, denominada website_id, es un tipo de datos INT (hasta 11 caracteres) y no puede contener valores NULL.
  • La tercera columna, denominada host_name, es un tipo de datos VARCHAR (hasta 45 caracteres) y no puede contener valores NULL. Si no se proporciona ningún valor para esta columna, el valor predeterminado será “pendiente”.
  • La clave principal se llama pages_pk y se establece en la columna page_id.
(Visited 31 times, 1 visits today)