Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
eduardo
Rank: Programador Sênior
Mensagens: 56 Registrado em: Ter, 10 Jul 2007 3:24 pm
Localização: sp
Sempre há algo a aprender....
Seg, 25 Jul 2011 4:48 pm
Olá pessoal,
estou com uma dúvida e gostaria de compartilhar com voces...
Vejam os dois exemplos abaixo de uso de variáveis globais:
exemplo 1:
Selecionar tudo
declare
v_comissiona boolean;
v_tot number;
begin
if v_comissiona = TRUE then
v_tot := v_tot+1;
end if;
end;
exemplo 2
Selecionar tudo
declare
v_comissiona boolean;
v_tot number;
begin
if v_comissiona then
v_tot := v_tot +1
end if;
end;
Gostaria de saber se há algum custo diferente na execução do comando
utilizando essas duas formas de uso de variáveis booleanas.
desde já agradeço a ajuda
gfkauer
Rank: DBA Sênior
Mensagens: 389 Registrado em: Ter, 27 Jul 2010 1:34 pm
Localização: Sapiranga - RS
Contato:
Quem falou que programar era fácil??
Quanto mais dificil for a implementação mais valorizado seu trabalho será!
Acessem: www.gfkauer.com.br
Seg, 25 Jul 2011 5:11 pm
O exemplo 1 apesar de compilar não irá funcionar.
gfkauer
Rank: DBA Sênior
Mensagens: 389 Registrado em: Ter, 27 Jul 2010 1:34 pm
Localização: Sapiranga - RS
Contato:
Quem falou que programar era fácil??
Quanto mais dificil for a implementação mais valorizado seu trabalho será!
Acessem: www.gfkauer.com.br
Seg, 25 Jul 2011 5:12 pm
Retificando
Até funciona, mas não é a melhor pratica.
eduardo
Rank: Programador Sênior
Mensagens: 56 Registrado em: Ter, 10 Jul 2007 3:24 pm
Localização: sp
Sempre há algo a aprender....
Seg, 25 Jul 2011 5:13 pm
funcionou o primeiro exemplo aqui, estamos com o banco na versão 11G
eduardo
Rank: Programador Sênior
Mensagens: 56 Registrado em: Ter, 10 Jul 2007 3:24 pm
Localização: sp
Sempre há algo a aprender....
Seg, 25 Jul 2011 5:14 pm
ah, valeu!
alguém sabe se a performance é diferente nesses casos?
não tenho permissao no banco para fazer o plano de execução aqui..
gfkauer
Rank: DBA Sênior
Mensagens: 389 Registrado em: Ter, 27 Jul 2010 1:34 pm
Localização: Sapiranga - RS
Contato:
Quem falou que programar era fácil??
Quanto mais dificil for a implementação mais valorizado seu trabalho será!
Acessem: www.gfkauer.com.br
Ter, 26 Jul 2011 8:59 am
Diferente é, mas em um cenário tão minimo(complexidade de código) é dificil afirmar qual é o melhor.
Pela convenção que vemos em diversas outras linguagens utiliza-se o segundo modelo, já que você esta dizendo que se form verdadeiro faz a ação a seguir.
marcus.kobel
Rank: Programador Sênior
Mensagens: 45 Registrado em: Qui, 12 Mai 2011 4:54 pm
Localização: Porto Alegre - RS
Ter, 26 Jul 2011 3:36 pm
Eu acredito que a diferença de performance seja irrizória.
O teu código vai funcionar igual nos dois casos, mas não deve ter muita diferença pra aplicação. Ou se der, vai ser imperceptível.
A não ser que tu execute esse IF 5 milhões de vezes por segundo ou coisa parecida. Só assim pra ver alguma diferença... e olhe lá!
Explain plan não funciona pra código, só pra queries.
Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes