Alterando campos no Firebird

Publicado por Francis David em 08/06/2007

[ Hits: 17.392 ]

Blog: http://blog.fdavid.com.br

 


Alterando campos no Firebird



Apesar de muito procurar, não consegui encontrar um método para alterar um campo de NULL para NOT NULL sem utilizar os objetos internos do Firebird .

Para isso é necessário:

UPDATE RDB$RELATION_FIELDS SET RDB$NULL_FLAG = 1
WHERE RDB$RELATION_NAME = 'tablename' AND
RDB$FIELD_NAME = 'fieldname';

Onde: 0 NULL e 1 NOT NULL.

Outras alterações na tabela são possíveis sem tanto trabalho, como por exemplo alterar o tipo de um campo:

ALTER TABLE tablename ALTER fieldname TYPE typefield;

Mas atenção, o Firebird não permite alterações que possam resultar em perda de dados, se um campo é VARCHAR(50), não é possível reduzí-lo, aí não tem jeito, precisa excluir e recriar.

ALTER TABLE tablename DROP fieldname;
ALTER TABLE tablename ADD fieldname typefield;

Ao contrário do que muitos pensam, o MODIFY não funciona no Firebird, pelo menos na versão 2.0.

Outras dicas deste autor

Iniciar software automaticamente no Enlightenment

Formatação de data no Kylix, Delphi ou Lazarus

Saldo no Gkrellm

X no Slackware

Leitura recomendada

Como Editar Arquivos do Access (MDB) no Libreoffice Base

Rekall Revealed - Access para Linux

Você conhece o Apatar?

Manipulando o MySQL diretamente pelo shell

Lembre-se: você tem espaço gratuito para armazenar arquivos na rede!

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts