Cursos / Redes de Computadores / Conceitos de Banco de Dados / Aula
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:
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.
Caso você deseje conferir como ficou a estrutura da tabela clientes, utilize o comando DESC, estudado na Aula 10, conforme visto na Figura 2.
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.
Versão 5.3 - Todos os Direitos reservados