[firebase-br] Procedimento para criar Tabelas, Geradores e Triggers???

Hugo Ricardo hdricard em gmail.com
Sáb Mar 4 10:23:00 -03 2006


Boas.

É possivel ter um procedimento que crie Tabelas, Geradores e Triggers???

Descrevo o meu problema:

Tenho um programa de gestao de clientes com uma tabela de clientes associada 
com 500.000 registos com tendência para aumentar!!!

1. É possivel ter um programa 100% funcional e rápido com uma tabela com 
estes registos todos? Como? O meu programa está muito lento!!!

2. Estava a pensar solucionar o problema da seguinte forma:

- Dividir a tabela de clientes por várias tabelas conforme a familia (campo 
da tabela de clientes). Ficaria com muitas tabelas, mas com poucos registos 
dentre delas!!! Penso que em termos funcionais e de rapidez ficaria com um 
programa muito melhor! Certo?

3. Para esta solução precisava de criar uma tabela por cada tipo de familia 
(Familia/Tipo de Clientes). Pretendia fazer isto independente da aplicação, 
ou seja, em SQL directamente na Base de Dados Firebird. Pretendia criar um 
procedimento:

Procedure CriarTabela(Nome_Tabela, Nome_Familia)
begin
    CREATE GENERATOR ...GERADOR_NOVO;

    CREATE TABLE Nome_Tabela (
        ...
    );

    CREATE TRIGGER Nome_Trigger FOR Nome_Tabela
    ACTIVE BEFORE INSERT POSITION 0
    AS
    BEGIN
          IF (NEW.ID IS NULL) THEN
            NEW.ID = GEN_ID(GERADOR_NOVO,1);
    END
end;

É possivel fazer isto???

É possivel percorrer todos os registos da tabela Clientes Agrupados pela 
Familia e inseri-los na nova Tabela???

Agradeço qualquer tipo de ajuda, códigos, ...!

Obrigado
Hugo Ricardo, Portugal 







Mais detalhes sobre a lista de discussão lista