 |
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
sidneyps Aprendiz

Registrado: Quarta-Feira, 16 de Março de 2005 Mensagens: 118
|
Enviada: Qui Jan 11, 2007 12:38 pm Assunto: Melhorando Triggers |
|
|
Pessoal,
eu tenho a Triggers abaixo e ela esta demorando muito, gostaria de saber se o motivo é a estrutura dela. Alguém poderia verificar se a estrutura pode ser melhorada?
CREATE TRIGGER ALTERARREFMEDIDOR FOR RZ
ACTIVE BEFORE UPDATE POSITION 0
AS
begin
/* ATUALIZAR CAMPOS RZ,RT,APCONTA E LOCAL DOS MEDIDORES CASO AJA MUDANÇA DE ROTA */
if ((new.ref <> old.ref) and
(exists(select * from CADMED M where M.cad_razao=old.razao and M.cad_rt=old.livro
and M.local=old.local and M.cad_conta=old.conta))) then
update CADMED M set
M.cad_razao=new.razao,
M.cad_rt=new.livro,
M.local=new.local,
M.cad_conta=new.conta
where M.cad_razao=old.razao and M.cad_rt=old.livro
and M.local=old.local and M.cad_conta=old.conta ;
end
SET TERM ; ^ |
|
Voltar ao Topo |
|
 |
thomazs Moderador


Registrado: Segunda-Feira, 1 de Março de 2004 Mensagens: 2835
|
Enviada: Qui Jan 11, 2007 6:51 pm Assunto: |
|
|
Aparentemente, o que você pode fazer pra melhorar o desempenho é criar alguns índices, para otimizar o update. _________________ Suporte e Consultoria em Desenvolvimento de Sistemas
Bacharel em Sistemas de Informação
Especialista em Bancos de Dados
Desenvolvimento: Clipper, Delphi, PHP, Python/Django |
|
Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|