Duvida performance rowtype‏

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
carlos-csilva
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 1
Registrado em: Ter, 01 Nov 2011 5:44 am

Ola, pessoal!

Em todos meus códigos utilizo bastante o rowtype. É uma boa pratica e ganho performance em utilizá-lo? Segue um exemplo abaixo que costumo usar bastante. Mesmo que seja para uma ou duas informações utilizo ele. Esta correto?

Selecionar tudo

DECLARE
  R_TABELA     TABELA%ROWTYPE;
BEGIN
  SELECT * INTO R_TABELA;
    FROM TABELA
   WHERE CODIGO = 1;
END;

Selecionar tudo

DECLARE
  W_NOME      VARCHAR2(40);
  W_END       VARCHAR2(60);
BEGIN
  SELECT NOME, END INTO W_NOME, W_END
    FROM TABELA
   WHERE CODIGO = 1;
END;
Att;
Avatar do usuário
stcoutinho
Moderador
Moderador
Mensagens: 850
Registrado em: Qua, 11 Mai 2011 5:15 pm
Localização: são Paulo - SP

Oi Carlos,

Talvez algum forista que tenha maior conhecimento em performance possa lhe esclarecer este ponto.

Ao meu ver, o principal motivo do uso do %ROWTYPE, %TYPE em códigos PL/SQL não estão relacionados com PERFORMANCE, mas sim a possibilidade de manter o "código enxuto", evitando a declaração excessiva de variáveis dentro do código PL/SQL. Um outro motivo é que seu uso reduz a necessidade de manutenções, caso ocorra alguma alteração no datatype da coluna usada.

At

Sergio Coutinho
DanielNN
Moderador
Moderador
Mensagens: 641
Registrado em: Seg, 03 Set 2007 3:26 pm
Localização: Fortaleza - CE
att,

Daniel N.N.

Acredito que a principal função de usar o %TYPE de uma table ou coluna é na manutenibilidade do código. Quando ocorrer alguma alteração de algum tipo na coluna de uma tabela, não ser necessário refazer o código e esta alteração ser "insensível" ao desenvolvedor/dba.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Bing [Bot], Google [Bot] e 17 visitantes