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.
Alexandre Nascimento
Achei ótimas as dicas que foram passadas, mas eu gostaria de saber como farei para usar estes comando usando o DELPHI e ZEOS??
2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.