SQL ALTER TABLE




SQL > Manipulação de Tabelas > Alter Table

Assim que uma tabela for criada na base de dados, muitas vezes o utilizador poderá querer alterar a estrutura da tabela. Os casos típicos incluem o seguinte:

  • Adicionar uma coluna
  • Remover uma coluna
  • Alterar o nome de uma coluna
  • Alterar o tipo de dados de uma coluna

Note que o acima apresentado não constitui uma lista exaustiva. Existem outros momentos em que ALTER TABLE é utilizado para alterar a estrutura da tabela, tal como alterar a especificação da chave primária ou adicionar uma restrição única a uma coluna.

A sintaxe SQL para ALTER TABLE é:

ALTER TABLE "nome_tabela"
[alter specification];

[alter specification] depende do tipo de alteração que pretendemos efetuar. Para os fins acima citados, as instruções [alter specification] são:

  • Adicionar uma coluna: ADD "coluna 1" "tipo de dados para a coluna 1"
  • Remover uma coluna: DROP "coluna 1"
  • Alterar o nome de uma coluna: CHANGE "antigo nome da coluna" "novo nome da coluna" "tipo de dados para novo nome da coluna"
  • Alterar o tipo de dados de uma coluna: MODIFY "coluna 1" "novo tipo de dados"

Analisemos cada um dos exemplos acima apresentados utilizando a tabela "customer" na secção CREATE TABLE:

Tabela Customer
Nome da ColunaTipo de Dados
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime

Primeiro, queremos adicionar uma coluna denominada "Gender" a esta tabela. Para tal, introduzimos:

ALTER TABLE Customer ADD Gender char(1);

Estrutura da tabela obtida:

Tabela Customer
Nome da ColunaTipo de Dados
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime
Genderchar(1)

A seguir, queremos renomear "Address" para "Addr". Para tal, introduzimos:

ALTER TABLE Customer CHANGE Address Addr char(50);

Estrutura da tabela obtida:

Tabela Customer
Nome da ColunaTipo de Dados
First_Namechar(50)
Last_Namechar(50)
Addrchar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime
Genderchar(1)

Em seguida, queremos alterar o tipo de dados de "Addr" para char(30). Para tal, introduzimos:

ALTER TABLE Customer MODIFY Addr char(30);

Estrutura da tabela obtida:

Tabela Customer
Nome da ColunaTipo de Dados
First_Namechar(50)
Last_Namechar(50)
Addrchar(30)
Citychar(50)
Countrychar(25)
Birth_Datedatetime
Genderchar(1)

Finalmente, queremos eliminar a coluna "Gender". Para tal, introduzimos:

ALTER TABLE Customer DROP Gender;

Estrutura da tabela obtida:

Tabela Customer
Nome da ColunaTipo de Dados
First_Namechar(50)
Last_Namechar(50)
Addrchar(30)
Citychar(50)
Countrychar(25)
Birth_Datedatetime

SQL DROP TABLE >>



Copyright © 2016   1keydata.com   Todos os direitos reservados.