Eduardo Fernandes escreveu:
> Olá, meu nome é Eduardo Fernandes, programo em C e atualmente estou 
> desenvolvendo uma aplicação em C# e usando o PostgreSql.
> 
> Minha duvida é sobre o "get diagnotics". Alguém sabe se existe a 
> possibilidade de ele atribuir um valor nulo à variável?
> 
> Pois eu me previno da seguinte forma:
> 
> get diagnostics parcial = ROW_COUNT;
> 
> if(not parcial is null)then
>     total := total + parcial;
> end if;
> 
> Pois assim, se a variável "parcial" vier nula isso não vai "estragar 
> minha variável de valor "total". Porém imagino que se o "get 
> diagnostics" nunca retornar nulo eu não precisaria do "if" para 
> atrapalhar a performance das minhas functions.
> 


Creio que o PostgreSQL retorne zero se não existir linhas afetadas pela 
operação. Mas você pode utilizar a função coalesce e não se preocupar 
com isso:
        total := total + coalesce(parcial, 0);
http://www.postgresql.org/docs/8.2/interactive/functions-conditional.html#AEN13107

Osvaldo
PS Se quizer ter certeza dê uma consultada nos fontes.
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a