MySQL: operaciones relacionadas con la tabla

Crea una tabla de datos

Gramática básica

En MySQL, puede utilizar la CREATE TABLEinstrucción para crear la tabla. El formato de sintaxis es:

CREATE TABLE <表名> ([表定义选项])[表选项][分区选项];

Entre ellos, [表定义选项]el formato es:

<列名1> <类型1> [,] <列名n> <类型n>

CREATE TABLE Hay muchas sintaxis de comandos, que se componen principalmente de la definición de creación de tablas (create-definition), opciones de tabla (opciones de tabla) y opciones de partición (opciones de partición).

A continuación se describe en primer lugar un ejemplo sencillo de la nueva tabla, y luego se pone de relieve CREATE TABLEalgunos de los principales puntos de comandos de gramática.

CREATE TABLE La sintaxis principal y las instrucciones de uso de la declaración son las siguientes:

  • CREATE TABLE: Se utiliza para crear una tabla con un nombre dado, debe tener CREATEpermisos de tabla .
  • <表名>: Especifica el nombre de la tabla que se creará en el CREATE TABLEdado después, deben cumplir con las reglas de nomenclatura identificador. El nombre de la tabla se especifica como db_name.tbl_name para crear la tabla en una base de datos específica. Ya sea que exista o no una base de datos actual, se puede crear de esta manera. Al crear una tabla en la base de datos actual, puede omitir el nombre db. Si usa nombres distinguidos entrecomillados, cite la base de datos y los nombres de las tablas por separado. Por ejemplo, 'mydb'. 'Mytbl' es legal, pero 'mydb.mytbl' no es legal.
  • <表定义选项>: Definición de creación de tabla, que consiste en el nombre de la columna (col_name), la definición de la columna (column_definition) y la posible descripción de valor nulo, restricción de integridad o índice de la tabla.

Por defecto, la tabla se crea en la base de datos actual. Si la tabla ya existe, no hay una base de datos actual o la base de datos no existe, se producirá un error .

Consejo: Utilice CREATE TABLEal crear una tabla, debe especificar la siguiente información:

  • Nombre de la tabla que se cree no es sensible, no puede utilizar palabras clave del lenguaje SQL, como DROP, ALTER, INSERTy así sucesivamente.
  • El nombre y el tipo de datos de cada columna (campo) en la tabla de datos. Si crea varias columnas, sepárelas con comas.

Crear una tabla en la base de datos especificada

La tabla de datos pertenece a la base de datos. Antes de crear la tabla de datos, debe usar la instrucción " USE<数据库>" para especificar la base de datos en la que se realiza la operación. Si la base de datos no está seleccionada, se generará un error No hay base de datos seleccionada.

Ver estructura de tabla

En MySQL, después de crear una tabla de datos utilizando sentencias SQL, puede ver la definición de la estructura para confirmar si la definición de la tabla es correcta. En MySQL, la estructura de la tabla se puede utilizar para la vista DESCRIBEy SHOW CREATE TABLEdeclaraciones.

DESCRIBE/DESC La instrucción puede ver la información del campo de la tabla, incluido el nombre del campo, el tipo de datos del campo, si es la clave principal, si hay un valor predeterminado, etc. Las reglas de sintaxis son las siguientes:

DESCRIBE <表名>;

O abreviado como:

DESC <表名>;

Ejemplos:

mysql> DESCRIBE tb_emp1;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int(11)     | YES  |     | NULL    |       |
| name   | varchar(25) | YES  |     | NULL    |       |
| deptId | int(11)     | YES  |     | NULL    |       |
| salary | float        | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.14 sec)

Entre ellos, el significado de cada campo es el siguiente:

  • Null: Indica si la columna puede almacenar NULLvalores.
  • Key: Indica si la columna ha sido indexada. PRI indica que la columna es parte de la clave primaria de la tabla, UNI indica que la columna es parte del índice ÚNICO y MUL indica que un valor dado en la columna puede aparecer varias veces.
  • Default: Indica si la columna tiene un valor predeterminado y, de ser así, cuál es el valor.
  • Extra: Indica la información adicional asociada con una columna dada se puede obtener, tal como AUTO_INCREMENTy similares.

SHOW CREATE TABLELa declaración se puede usar para mostrar la CREATE TABLEdeclaración al crear la tabla. La sintaxis es la siguiente:

SHOW CREATE TABLE <表名>\G;

Ejemplos:

mysql> SHOW CREATE TABLE tb_emp1\G
*************************** 1. row ***************************
       Table: tb_emp1
Create Table: CREATE TABLE `tb_emp1` (
  `id` int(11) DEFAULT NULL,
  `name` varchar(25) DEFAULT NULL,
  `deptId` int(11) DEFAULT NULL,
  `salary` float DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312
1 row in set (0.03 sec)

Consejo: Use la instrucción SHOW CREATE TABLE para ver no solo la declaración detallada al crear la tabla, sino también el motor de almacenamiento y la codificación de caracteres. Si no se agrega el parámetro "\ G", el resultado mostrado puede ser muy confuso. Después de agregar el parámetro "\ G", el resultado mostrado puede ser más intuitivo y fácil de ver.

Modificar tabla de datos

En MySQL puede utilizar la ALTER TABLEdeclaración para cambiar la estructura de las tablas originales, por ejemplo, añadir o columnas eliminar, crear o destruir índices, cambiar el tipo de columnas existentes, columnas de cambio de nombre o listas.

Gramática básica

Modificar una tabla se refiere a modificar la estructura de una tabla de datos que ya existe en la base de datos. MySQL utilizar la ALTER TABLEdeclaración de modificar tablas. Las operaciones comunes para modificar una tabla incluyen modificar el nombre de la tabla, modificar el tipo de datos del campo o el nombre del campo, agregar y eliminar campos, modificar la disposición de los campos, cambiar el motor de almacenamiento de la tabla y eliminar las restricciones de clave externa en la tabla.

El formato de sintaxis comúnmente utilizado es el siguiente:

ALTER TABLE <表名> [修改选项]

[修改选项]La sintaxis es la siguiente:

{ ADD COLUMN <列名> <类型>
| CHANGE COLUMN <旧列名> <新列名> <新列类型>
| ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY COLUMN <列名> <类型>
| DROP COLUMN <列名>
| RENAME TO <新表名> }

Agregar campo

A medida que cambia el negocio, es posible que sea necesario agregar nuevos campos a las tablas existentes. Un campo completo incluye el nombre del campo, el tipo de datos y las restricciones de integridad. La sintaxis para agregar campos es la siguiente:

ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] [FIRST|AFTER 已存在的字段名]

El nuevo nombre de campo es el nombre del campo que debe agregarse; FIRSTes un parámetro opcional cuya función es establecer el campo recién agregado como el primer campo de la tabla; AFTERes un parámetro opcional cuya función es agregar el campo recién agregado al campo especificado Detrás del nombre del campo existente.

Consejo: " FIRSTo AFTERun nombre de campo existente" se utiliza para especificar la ubicación del nuevo campo de la tabla, si la instrucción SQL sin estos dos parámetros, el valor por defecto será el campo que acaba de agregar a la tabla de datos de la última columna.

Modificar el tipo de datos del campo

Modificar el tipo de datos de un campo es convertir el tipo de datos del campo a otro tipo de datos. Las reglas de sintaxis para modificar los tipos de datos de campo en MySQL son las siguientes:

ALTER TABLE <表名> MODIFY <字段名> <数据类型>

Entre ellos, el nombre de la tabla se refiere al nombre de la tabla donde se debe modificar el campo del tipo de datos, el nombre del campo se refiere al campo a modificar y el tipo de datos se refiere al nuevo tipo de datos del campo modificado.

Eliminar campo

Al eliminar un campo, se elimina un campo de la tabla de datos. La sintaxis es la siguiente:

ALTER TABLE <表名> DROP <字段名>

Entre ellos, el nombre del campo se refiere al nombre del campo que debe eliminarse de la tabla.

Modificar el nombre del campo

Las reglas de sintaxis para modificar nombres de campos de tabla en MySQL son las siguientes:

ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>

Entre ellos, el nombre del campo anterior se refiere al nombre del campo antes de la modificación; el nuevo nombre del campo se refiere al nombre del campo modificado; el nuevo tipo de datos se refiere al tipo de datos modificado. Si el tipo de datos del campo no necesita ser modificado, el nuevo tipo de datos se puede establecer en el original Lo mismo, pero el tipo de datos no puede estar vacío.

CHANGETambién puede modificar sólo el tipo de datos, y lograr MODIFYel mismo efecto, por la instrucción SQL "el nuevo nombre del campo" y "nombres de campo viejos" se ajusta en el mismo nombre, sólo cambia el "Tipo de datos".

Consejo: Debido a que los diferentes tipos de datos no se almacenan en la máquina de la misma manera y longitud, la modificación del tipo de datos puede afectar los registros de datos existentes en la tabla de datos, por lo que cuando la tabla de datos ya tenga datos, no modifique fácilmente el tipo de datos .

Modificar el nombre de la tabla

Por MySQL ALTER TABLEpara implementar los estados modifica el nombre de la tabla, las reglas de sintaxis son los siguientes:

ALTER TABLE <旧表名> RENAME [TO] <新表名>

Entre ellos, TOes un parámetro opcional, si se usa o no no afecta el resultado.

Consejo: Los usuarios pueden usar el comando DESC para ver la estructura de las dos tablas modificadas al modificar el nombre de la tabla. La modificación del nombre de la tabla no modifica la estructura de la tabla. Por lo tanto, la estructura de la tabla después de la modificación del nombre y la tabla antes de la modificación del nombre son las mismas.

Eliminar tabla de datos

En la base de datos MySQL, podemos eliminar tablas de datos que ya no son necesarias de la base de datos.

Al eliminar la tabla, se eliminará la estructura de la tabla y todos los datos de la tabla, por lo que es mejor hacer una copia de seguridad antes de eliminar la tabla de datos para evitar pérdidas irreparables.

Echemos un vistazo al método de eliminación de la tabla de datos en la base de datos MySQL.

Gramática básica

Uso DROP TABLEdeclaración puede eliminar una o más tablas de datos, la siguiente sintaxis:

DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...]

La descripción del formato de sintaxis es la siguiente:

  • 表名1, 表名2, 表名3 ...Indica el nombre de la tabla de datos que se eliminará. DROP TABLESe pueden eliminar varias tablas al mismo tiempo, siempre que los nombres de las tablas se escriban en secuencia, separados por comas.
  • IF EXISTSSe usa para determinar si la tabla existe antes de eliminar la tabla de datos. Si no es así IF EXISTS, cuando no existe la tabla de datos MySQL le pedirá un error, interrupción de la ejecución de las sentencias SQL; además IF EXISTSdespués, las sentencias SQL se puede ejecutar con éxito cuando no existe la tabla de datos, pero le advertirá (advertencia).

Dos puntos a tener en cuenta:

  • Los usuarios deben tener ejecutar DROP TABLEcomandos permisos, de lo contrario no se elimina la tabla de datos.
  • Cuando se elimina la tabla, los permisos del usuario en la tabla no se eliminarán automáticamente.
Publicado 94 artículos originales · me gusta 0 · visitas 722

Supongo que te gusta

Origin blog.csdn.net/qq_46578181/article/details/105420811
Recomendado
Clasificación