Olá,

2010/4/8 Jose Luis Ramos <[email protected]>

> Pessoal, estou aprendendo/estudando plpgsql e tenho algumas dúvidas. Meu
> bloco é esse:
>
> DECLARE
> count_regs INT;
> reg_tab RECORD;
> BEGIN
> FOR reg_tab IN SELECT TABLENAME AS nome_tab_cdrger
>         FROM tabelas_cdrger Loop
>             SELECT INTO count_regs COUNT(*) FROM reg_tab.nome_tab_cdrger;
>             IF count_regs > 0 THEN
>                 NULL;
>             END IF;
> END LOOP;
> END
>
> Minha primeira dúvida é: como executar esse bloco ? No Oracle (pl/sql)
> basta executar esse código no prompt do SQL*PLUS. E no PostgreSQL ? Tenho
> que ter uma função ? Não tem como executar apenas o bloco plpgsql ?
>

Não é possível fazer que nem você faz no Oracle direto, para fazer é
necessário criar uma função.

Exemplo:

CREATE OR REPLACE FUNCTION exemplo(INTEGER)

RETURNS BOOLEAN AS $$

DECLARE

valor INTEGER:=5;

BEGIN

IF $1 = valor THEN

RETURN TRUE;

ELSE

RETURN FALSE;

END IF;

END;

$$ LANGUAGE PLPGSQL;

Obs: $1 refere-se ao parâmetro de entrada da função.

Chamada da função:

SELECT exemplo(5);

>
> Abs,
>
> --
> Jose Luis Ramos Jr
> Campinas - SP
> Oracle OCP DBA 8i, 9i,10g
> Fone: 19-37056793
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>

[]s
-- 
JotaComm
http://jotacomm.wordpress.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a