Banco de dados MySQL - adicione campos à tabela de dados MySQL (três maneiras)

Uma tabela de dados MySQL é composta de linhas e colunas. Normalmente, a "coluna" da tabela é chamada de campo (Field), e a "linha" de uma tabela é chamada de registro (Record). À medida que o negócio muda, pode ser necessário adicionar novos campos às tabelas existentes.

MySQL permite adicionar campos no início, meio e fim.

Adicionar campos no final

Um campo completo inclui nome do campo, tipo de dados e restrições. O formato de sintaxe dos campos de adição do MySQL é o seguinte:

ALTER TABLE <表名> ADD <新字段名><数据类型>[约束条件];

O formato da sintaxe é explicado da seguinte forma:                                       

  • <table name> é o nome da tabela de dados;
  • <nome do novo campo> é o nome do campo a ser adicionado;
  • <tipo de dados> é o tipo de dados que pode armazenar dados para o campo a ser adicionado;
  • [Constraints] é opcional e é usado para restringir os campos adicionados.

O padrão desse formato de sintaxe é adicionar novos campos no final da tabela (após a última coluna).

Observação: nesta seção, adicionamos apenas novos campos, não suas restrições.

Exemplo 1

Crie uma nova tabela de dados do aluno no banco de dados de teste e a instrução SQL e os resultados da execução serão os seguintes:

mysql> USE test;
Database changed
mysql> CREATE TABLE student (
    -> id INT(4),
    -> name VARCHAR(20),
    -> sex CHAR(1));
Query OK, 0 rows affected (0.09 sec)           

Use DESC para visualizar a estrutura da tabela do aluno, a instrução SQL e os resultados da execução são os seguintes:

mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(4)      | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)

Use a instrução ALTER TABLE para adicionar uma idade de campo do tipo INT, a instrução SQL e os resultados da execução são os seguintes:

mysql> ALTER TABLE student ADD age INT(4);
Query OK, 0 rows affected (0.16 sec)
Records: 0  Duplicates: 0  Warnings: 0

Use DESC para visualizar a estrutura da tabela do aluno e verifique se o campo de idade foi adicionado com sucesso. A instrução SQL e os resultados da execução são os seguintes:

mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(4)      | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
| age   | int(4)      | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

Como pode ser visto nos resultados da execução, o campo idade foi adicionado à tabela do aluno, e este campo está na última posição da tabela e o campo foi adicionado com sucesso.

Adicionar campos no início

Por padrão, o MySQL adiciona um novo campo no final da tabela. Se você quiser adicionar um novo campo no início (antes da primeira coluna), você pode usar a palavra-chave FIRST. A sintaxe é a seguinte:

ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] FIRST;

A palavra-chave FIRST geralmente é colocada no final da instrução.

Exemplo 2

Use a instrução ALTER TABLE para adicionar o campo stuId do tipo INT à primeira coluna da tabela.A instrução SQL e os resultados da execução são mostrados abaixo.

mysql> ALTER TABLE student ADD stuId INT(4) FIRST;
Query OK, 0 rows affected (0.14 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| stuId | int(4)      | YES  |     | NULL    |       |
| id    | int(4)      | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
| age   | int(4)      | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

Como pode ser visto nos resultados da execução, o campo stuId foi adicionado à tabela do aluno e este campo está na primeira posição na tabela e o campo foi adicionado com sucesso.

Adicionar campos no meio

Além de permitir que campos sejam adicionados no início e no final da tabela, o MySQL também permite que campos sejam adicionados no meio (após o campo especificado). Neste caso, a palavra-chave AFTER precisa ser usada. A sintaxe é como segue:

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

AFTER é usado para adicionar um novo campo após um campo existente.

Observe que um novo campo só pode ser adicionado após um campo existente, não antes dele.

Exemplo 3

Use a instrução ALTER TABLE para adicionar um campo chamado stuno com um tipo de dados INT na tabela do aluno, e o campo stuno está localizado atrás do campo name. A instrução SQL e os resultados da execução são os seguintes:

mysql> ALTER TABLE student ADD stuno INT(11) AFTER name;
Query OK, 0 rows affected (0.13 sec)
Records: 0  Duplicates: 0  Warnings: 0
 
mysql> DESC student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| stuId | int(4)      | YES  |     | NULL    |       |
| id    | int(4)      | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
| stuno | int(11)     | YES  |     | NULL    |       |
| sex   | char(1)     | YES  |     | NULL    |       |
| age   | int(4)      | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
6 rows in set (0.00 sec)

Como pode ser visto nos resultados da execução, o campo stuId foi adicionado à tabela do aluno, e este campo está atrás do campo de nome, e o campo foi adicionado com sucesso.

Entrada de banco de dados MySQL do programador azarão para proficiência, da instalação do mysql ao mysql avançado, otimização do mysql tudo coberto

Acho que você gosta

Origin blog.csdn.net/Itmastergo/article/details/130237790
Recomendado
Clasificación