Jump to content

Adauto Junior_64247

Members
  • Content count

    19
  • Joined

  • Last visited

Everything posted by Adauto Junior_64247

  1. Adauto Junior_64247

    Parar Execução de SCRIPTS

    Fala pessoal , preciso da ajuda dos senhores estou montando uma rotina de atualização de scripts porém precisava de um jeito de quando não satisfaze-se uma condição ou desse um erro a execução parasse , exemplo: begin if 1=2 then para a execução; end if; end; / create table... / drop table... / create procedure / declare a varchar begin end; /
  2. Adauto Junior_64247

    Parar Execução de SCRIPTS

    ninguém?
  3. Adauto Junior_64247

    Performance em Maquinas Difertentes

    Sim ja estão atualizadas !
  4. Adauto Junior_64247

    Performance em Maquinas Difertentes

    Fala pessoal preciso da ajuda dos senhores estou com um problema que é o seguinte quando eu pego a base do cliente e utilizo na minha maquina o processo roda instantâneo, porém no cliente esse processo demora cerca de 1 minutos para ser concluído, como a lentidão nao ocorre no ambiente de desenvolvimento fico de mãos atadas. Algumas observações A base é a mesma nos dois ambientes Ambas o acesso da aplicação com o banco é feito de forma local. O hardware do servidor do cliente é infinitamente melhor que o da minha maquina. A instalação do oracle é igual nas duas maquina inclusive parametrização(oracle 10g express). veja o que esta sendo usando do servidor Space Allocated: 4.461 MB Available: 659 MB Physical Limit: 5.120 MB Percent Used: 87% Target Current Maximum System Global Area (SGA) Size: 768 MB 768 MB Program Global Area (PGA) Aggregate Target: 256 MB 93 MB Current Configuration: (SGA + PGA): 1024 MB 861 MB O que eu suspeito que possa influenciar é que no servidor eu tenho varias outras sessões de vários usuários usando a aplicação. Por favor alguem pode me da uma luz ?
  5. Adauto Junior_64247

    Limitar SELECT

    Entendi, então seu max tem que ser no cliente e não na peça essa tabela venda tem chave da tabela cliente ? se tiver ficaria codigo_cliente in(select max(cod_cliente) from cliente b where a.codigo_cliente = b.codigo_cliente)
  6. Adauto Junior_64247

    Limitar SELECT

    pode usar algo assim SELECT * FROM venda a WHERE cod_peca IN (select max(cod_peca) from vendas b on b.cod_venda = a.cod_venda );
  7. Adauto Junior_64247

    Melhoria de performance.

    Pessoal , gostaria de saber se alguém pode me ajudar com uma questão tenho uma base Oracle onde rodo uma procedure com cursor essa procedure na minha maquina local roda bem rápido, no servidor do cliente demora 4 ou 5 x mais detalhe que em termos de hardware o servidor do cliente e melhor que minha maquina. Algo que eu posso fazer para melhorar esse desempenho(limpeza de cache por exemplo) percebo que esse servidor tem um aumento gradativo do consumo de memoria e essa memoria não é liberada(só quando o banco é reincido) , temos alguma opção nesse sentido?
  8. Adauto Junior_64247

    Tratamento de COUNT

    Então cara eu resolveria essa questão da duplicação na procedure, fazendo dois Select separados e jogando o resultado em uma temp.
  9. Adauto Junior_64247

    Tratamento de COUNT

    Nesse caso, eu criaria uma procedure e faria essa contagem separado salvando tudo em uma tabela temporaria.
  10. Adauto Junior_64247

    Tratamento de COUNT

    Cara se você não precisa de performance e vai usar esse select de forma esporádica eu faria uma gambiarra do tipo select campo1 ,(select count(*) from tabela1 A where A,codigo = TB1.codigo) Cont from tabela 1 TB1 inner join .....
  11. Adauto Junior_64247

    Trigger Oracle não funciona no Delphi 7

    Pessoa preciso de ajuda, seguinte criei uma trigger no oracle que antes de inserir o registro insere um numero sequencial em outra tabela ou em uma tabela de log caso de erro. Até ai blz a trigger esta perfeita e quando dou um insert pelo banco funciona perfeito. Porém quando dou insert pela aplicaçao delphi a inserção na tabela de controle ou no log não funciona. porém eu sei que a trigger esta sendo executada pois antes da inserção ela pega um valor de sequencia. alguém pode me ajudar?
  12. Adauto Junior_64247

    Melhoria de performance.

    Não, é o mesmo banco. Sim , estatísticas estão atualizadas Acho os indices e as querys são as mesma que rodo na minha maquina e aqui é mega rápido e no servidor do cliente lento.
  13. Adauto Junior_64247

    Trigger Oracle não funciona no Delphi 7

    Pessoal, consegui resolver o problema do delphi, mudei a lógica de inserção e acabou dando certo. Obrigado.
  14. Adauto Junior_64247

    Trigger Oracle não funciona no Delphi 7

    Tem um exemplo de utilização de trigger no oracle, não consegui fazer eu uso try no sql server e funfa normal no oracle não consegui fazer de jeito nenhum
  15. Adauto Junior_64247

    Trigger Oracle não funciona no Delphi 7

    então ai talvez seja minha burrice em ação eu não achei outra maneira de fazer isso , eu preciso que essa trigger tente inserir na ssp607a e caso de exception tente inserir de novo, se eu nao coloco no for ele para as tentativas na primeira entrada no exception. desse jeito ele tenta inserir na ssp607a , caso consigo para o for.
  16. Adauto Junior_64247

    Trigger Oracle não funciona no Delphi 7

    Eu preciso que esse insert na ssp607a seja independente, utilizo essa informação na sequencia do processo.
  17. Adauto Junior_64247

    Trigger Oracle não funciona no Delphi 7

    Cara , quando eu tiro essa linha a trigger parece que entra em uma especie de loop infinito
  18. Adauto Junior_64247

    Trigger Oracle não funciona no Delphi 7

    comita sim, parece que a trigger não consegue inserir dados na tabela vou colar a trigger aqui. CREATE OR REPLACE TRIGGER TRG_SSP023 BEFORE INSERT ON SSP023 REFERENCING OLD AS OLD NEW AS NEW for each row DECLARE vnumbancario varchar2(100); drf integer; PRAGMA AUTONOMOUS_TRANSACTION; begin select sq_ssp023.nextval into drf from dual; :NEW.DRFCODIGO := drf; for countdis in 0..1000000000 loop begin IF (:NEW.DRFBANCO is not null ) AND ( :NEW.DRFNUMBANCARIO is not null) THEN --DBMS_OUTPUT.PUT_LINE(:NEW.DRFBANCO); INSERT INTO SSP607A (CONCCONUMERO,CONDRFCODIGO,CONDRFNUMBANCARIO,CONCCOBANCO) VALUES(:NEW.DRFCONTABOLETO,drf,:NEW.DRFNUMBANCARIO,:NEW.DRFBANCO); commit; select condrfnumbancario into vnumbancario from ssp607a where condrfcodigo = drf; --DBMS_OUTPUT.PUT_LINE('passou'); :NEW.DRFNUMBANCARIO :=vnumbancario; EXIT WHEN 1=1; END IF; EXCEPTION when others then null; end; end loop; end;
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.