Remoção de CONSTRAINT no Firebird

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

[ Hits: 12.775 ]

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

Compilar kernel no Linux

Atualizando a biblioteca glibc

FirePHP: Depurador de códigos PHP

Obtendo especificação de hardware no Linux

Linux Slackware 12.1 com Compiz-Fusion

Leitura recomendada

Instalando MariaDB no CentOS 5.7

Curso SQL grátis

Lentidão ao carregar sistema com Fedora 7 + LDAP + Samba

Firebird 2.1 com FlameRobin no Ubuntu 9.10

Simples atividade de SQL

  

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