Cursos / Informática para Internet / Banco de Dados / Aula

arrow_back Aula 12 - Linguagem SQL – Alteração da estrutura de tabelas e ambientes de múltiplas tabelas

Alteração da estrutura de uma tabela

Em aulas anteriores, aprendemos a criar, inserir e selecionar dados em tabelas. Mas, como proceder para inserir, por exemplo, uma coluna em uma tabela já existente, no nosso banco de dados? Será que é necessário, para isso, excluir toda a tabela (dados e estrutura)? A resposta para ambas as perguntas é não. Utilizando o comando ALTER, é possível alterar a estrutura de uma tabela, por exemplo, inserindo novas colunas.

Usando o comando ALTER, é possível realizar as seguintes alterações na estrutura de uma tabela:

  • Adicionar colunas.
  • Excluir colunas.
  • Alterar o tipo e o nome de uma coluna já existente.

A sintaxe do comando ALTER para adicionar colunas a uma tabela é descrita no quadro a seguir.

Observe que no comando ALTER aparece a cláusula ADD indicando que estamos adicionando uma coluna à tabela e definindo o seu tipo. É possível adicionar mais de um campo de uma única vez. Para isso, basta usar uma vírgula para separar os itens a serem inseridos. Examine o exemplo a seguir, no qual adicionamos o campo endereço (cli_endereco) na tabela clientes da nossa locadora.

A resposta do SGBD, no caso o MySQL, ao referido comando, é ilustrada na Figura 1. A mensagem “Query OK” informa que a coluna foi adicionada corretamente.

Tela do <span class='italico'>My</span>SQL após o comando ALTER TABLE clientes ADD cli_endereco VARCHAR(100).

Caso você deseje conferir como ficou a estrutura da tabela clientes, utilize o comando DESC, estudado na Aula 10, conforme visto na Figura 2.

Tela do <span class='italico'>My</span>SQL mostrando a estrutura da tabela <span class='strong'>clientes</span> após a inserção da coluna cli_endereco.

Observe na Figura 2 que o campo cli_endereco é o último da lista de atributos. Você pode utilizar palavras-chaves como FIRST (primeiro), AFTER (após), BEFORE (antes) e LAST (por último) para posicionar a nova coluna na posição que desejar na tabela. Além dessas palavras-chaves, podem ser utilizadas as palavras SECOND (segundo), THIRD (terceiro) e, assim, por diante.

É importante destacar que a utilização dessas palavras-chaves, para o posicionamento das colunas, depende do SGBD adotado, por exemplo, no MySQL só é permitido o emprego de FIRST e AFTER.

Para uma melhor compreensão, analise as seguintes inserções na tabela filmes da nossa locadora.

A primeira inserção introduz a coluna fil_direção, do tipo VARCHAR, no início da lista de atributos, e a segunda inserção introduz a coluna fil_atores após a coluna fil_direção. As respostas do SGBD às referidas inserções e a nova estrutura da tabela filmes são ilustradas na Figura 3. Independente da ordem que as colunas sejam definidas na estrutura da tabela, ao fazermos uma consulta com o SELECT, podemos especificar a ordem mais adequada para nossa visualização.

Tela do <span class='italico'>My</span>SQL após os comandos ALTER e DESC.

Versão 5.3 - Todos os Direitos reservados