Remoção de CONSTRAINT no Firebird

Publicado por Fábio Felix Dias em 01/07/2010

[ Hits: 12.777 ]

Blog: http://lattes.cnpq.br/3165934037473827

 


Remoção de CONSTRAINT no Firebird



Para remover constraints de forma rápida.

Exemplos:

01. Digamos que exista uma tabela T com uma chave estrangeira X:

REMOVER_CONSTRAINT(T, 'FOREIGN KEY');

02. Para a mesma tabela T com um check em um campo J:

REMOVER_CONSTRAINT(T, 'CHECK);

Perceba que se existirem n CONSTRAINTS do tipo que está sendo passado, todas elas serão removidas:

create procedure REMOVER_CONSTRAINT (
    TABELA varchar(50),
    TIPO_CONSTRAINT varchar(50))
as
declare variable SQL varchar(100);
begin
  SELECT
    'ALTER TABLE ' || TRIM(RC.RDB$RELATION_NAME) ||
    ' DROP CONSTRAINT ' || TRIM(RC.RDB$CONSTRAINT_NAME) || ';'
  FROM RDB$RELATION_CONSTRAINTS RC
  WHERE RC.RDB$CONSTRAINT_TYPE = :TIPO_CONSTRAINT
        AND RDB$RELATION_NAME  = :TABELA
  INTO :V_CONSTRAINT;

  EXECUTE STATEMENT :SQL ;
end

Outras dicas deste autor

Atualizando a biblioteca glibc

Obtendo especificação de hardware no Linux

Compilar kernel no Linux

FirePHP: Depurador de códigos PHP

Linux Slackware 12.1 com Compiz-Fusion

Leitura recomendada

Simples atividade de SQL

Firebird 2.1 com FlameRobin no Ubuntu 9.10

Firebird: Como parar e iniciar no Slackware Linux

Conhecendo a linguagem SQL

Instalação do Firebird 2.1.3

  

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