Treinamento Online
Quinta-feira, 23 de janeiro de 2003 às 03h59

MySQL: Alterando a Estrutura de uma Tabela

Olá pessoal!

Depois de um pequeno período de férias, estou retornando ao trabalho e antes de começarmos o artigo dessa semana quero pedir desculpas aos leitores da minha coluna, pois estou com muitos emails em minha caixa postal para serem respondidos, mas que pretendo responder todos durante essa semana.

O primeiro artigo de 2003 será sobre o MySQL, mais especificamente sobre como alterar a estrutura de uma tabela.

Para se fazer essa alteração usa-se o comando ALTER TABLE.

SINTAXE
ALTER [IGNORE ] TABLE <tabela> <alteração>

1 - Abaixo, veremos alguns parâmetros disponíveis para <alteração>

Para fixar o aprendizado, vamos criar uma tabela que nos servirá de teste nesse artigo:

COMANDO USADO PARA CRIAR A TABELA
CREATE TABLE imasters_60 (
ID int(3) default NOT NULL,
NOME varchar(35) default NOT NULL,
EMAIL varchar(50) default NOT NULL
);

Resultado:



Descrição da tabela IMASTERS_60




CRIANDO UMA NOVA COLUNA PARA A TABELA

COMANDO
ALTER TABLE IMASTERS_60 ADD ENDERECO VARCHAR(50)

Veja, que criamos uma coluna ENDERECO do tipo VARCHAR com tamanho de 50.

Resultado:




CRIANDO UM (NOVO) INDÍCE PARA A TABELA

Baseando-se na nossa tabela que criamos acima, faça o seguinte:

COMANDO
ALTER TABLE IMASTERS_60 ADD INDEX(NOME)

A coluna NOME torna-se um índice da nossa tabela depois de ter usado o comando acima.

Resultado:

CRIANDO UMA CHAVE PRIMÁRIA PARA A TABELA

Lembre-se que se na tabela a chave primária já existir, o comando retornará uma mensagem de erro.

COMANDO
ALTER TABLE IMASTERS_60 ADD PRIMARY KEY(ID)

Resultado:




ALTERANDO A DEFINIÇÃO DE UM CAMPO DA TABELA

Vamos supor, que a coluna NOME de sua tabela seja um VARCHAR(30) e você quer aumentar esse número para 50.

COMANDO
ALTER TABLE IMASTERS_60 MODIFY NOME VARCHAR(50)

Resultado:




EXCLUINDO UMA COLUNA DA TABELA

Por exemplo, para deletar a coluna EMAIL da tabela IMASTERS_60 usa-se o seguinte comando:

COMANDO
ALTER TABLE IMASTERS_60 DROP EMAIL

Resultado:

DELETANDO A CHAVE PRIMÁRIA DA TABELA

COMANDO
ALTER TABLE IMASTERS_60 DROP PRIMARY KEY

Resultado:




DELETANDO UM DOS ÍNDICES DA TABELA

Na tabela IMASTERS_60 possuímos apenas um índice que é o campo NOME. Para efeito de aprendizado vamos deletá-lo, para isso use o comando abaixo:

COMANDO
ALTER TABLE IMASTERS_60 DROP INDEX(NOME)

Resultado:

RENOMEANDO UMA TABELA

Para finalizar o artigo, vamos renomear a nossa tabela de IMASTERS_60 para IMASTERS_600.

COMANDO
ALTER TABLE IMASTERS_60 RENAME IMASTERS_600

Resultado:

Essas são algumas das opções do comando ALTER TABLE, para maiores detalhes sobre elas e outras que não foram citadas nesse artigo utilize o manual do MySQL que está disponível em www.mysql.com.

Não deixe de nos enviar críticas ou sugestões para o próximo assunto, afinal a coluna é de vocês.

1 comentário

 Alexandre Nascimento
12/06/2008 14h57

Alterando as estruturas

Achei ótimas as dicas que foram passadas, mas eu gostaria de saber como farei para usar estes comando usando o DELPHI e ZEOS??

Cancelar resposta

Qual a sua opinião?

Faça login abaixo ou cadastre-se rapidamente.


Sobre o Autor
Júlio César Martini atualmente presta serviços de WebMaster/Programador para o UOL (http://www.uol.com.br), Graduado em Tecnólogo em Informática pela UNIFIAN - Faculdades Anhanguera e Pós-Graduado em Desenvolvimento de Software para Web pela UFSCAR. Foi o primeiro profissional a chegar à marca de 100 artigos publicados no iMasters e trabalha com PHP desde 2000. Site: http://www.juliocesarmartini.com

2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.