Fórum Alterar Tamanho do Campo #282300

19/05/2005

0

Alguém já descobriu uma forma melhor de alterar o tamanho de um campo em um banco de dados em uso.
Faço isso criando um campo com um novo nome, copio todos os dados para o novo campo, deleto o campo antigo, crio-o novamente, agora com o tamanho desejado e copio novamente os dados para ele.
Funciona. Só que é um pouco trabalhoso.
Será que não existe uma função uma função que só aumente o tamanho do campo?

Obs.: tenho que fazer isso via delphi, pois tenho o bd não está comigo. Está com vários clientes.


Valdirdill

Valdirdill

Responder

Posts

19/05/2005

Edilcimar

qual o banco de dados?


Responder

Gostei + 0

20/05/2005

Valdirdill

Desculpe. É firebird 1.5 e Delphi 7.


Responder

Gostei + 0

20/05/2005

Gandalf.nho

Use o comando ALTER TABLE. Como vc usa FB, vc pode usar o componente IBScript da paleta IBX para isso.


Responder

Gostei + 0

21/05/2005

Valdirdill

Eu utilizo o comando alter table - via delphi - em scripts para criar (alter table nometabela add nomecampo tipocamp) e apagar (alter table nometabela drop nome campo), mas em campo que já existe? Acho que não é possível ou estou errado?

Como ficaria o comando então?


Responder

Gostei + 0

21/05/2005

Hugofab

valdirdill,

Crie um campo temporário para mover os dados, crie o novo campo com o novo tamanho, mova os dados para o novo campo, delete campo antigo.

o comando para mover o campo:

update tabela SET nome=nome_temporario;

Qualquer coisa estamos ai!


Hugo Fabrício


Responder

Gostei + 0

21/05/2005

Valdirdill

Acho que você não leu o início deste tópico. Conforme expliquei, é exatamente assim que eu faço. O que que gostaria é de uma maneira mais fácil.

Agradeço a disposição de quem tentou me ajudar. Eu já consegui uma rotina para fazer o que quero sem ter que criar, transportar e deletar campos e dados.

Para quem precisar vou deixar aqui um script de exemplo:
´Alter table TabelaClientes alter column Endereco type VarChar(60)´

Obs.: esse campo - Endereco - tinha tamanho 50. Rodar esse script e ainda preservar os dados só funciona quando você quer aumentar o tamanho do campo. Para diminuir não funciona.

Valeu galera!


Responder

Gostei + 0

27/11/2006

Tiagorocha

Alguém sabe fazer isso com campos calculados?


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar