Em 20 de setembro de 2010 11:07, Jorge Luiz <[email protected]>escreveu:
>
> Sei que a parte "1663/26724/" é referente a base de dados "X", porem
> o objeto "24371738" nao aparece em meu catalogo do sistema, o que eu
> posso fazer pra nao ficar dando problemas no banco?
>
>
Em anexo segue uma função que procura por um OID no seu catálogo, faça:
$ psql -U usuario sua_base_de_dados -f fc_procura_oid.sql
$ psql -U usuario sua_base_de_dados
sua_base_de_dados=# SELECT fc_procura_oid(24371738);
Tente isso para ver se isso dá alguma "luz" do problema.
--
Fabrízio de Royes Mello
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
create or replace function fc_procura_oid(oid) returns boolean as
$$
declare
xOid alias for $1;
lRetorno boolean default false;
lAchou boolean default false;
rTabelas record;
sExecuta text;
begin
for rTabelas in
select pg_class.relname,
'SELECT EXISTS(SELECT oid FROM '||quote_ident(nspname)||'.'||quote_ident(relname)||' WHERE oid = ' as sql_to_search
from pg_attribute
inner join pg_class on pg_class.oid = pg_attribute.attrelid
inner join pg_namespace on pg_namespace.oid = pg_class.relnamespace
where pg_attribute.attname = 'oid'
and pg_class.relkind = 'r'
and pg_namespace.nspname = 'pg_catalog'
order by 1
loop
sExecuta := rTabelas.sql_to_search || xOid || ')';
execute sExecuta into lAchou;
if lAchou then
raise info 'OID % encontrado na tabela %', xOid, rTabelas.relname;
lRetorno := true;
end if;
end loop;
return lRetorno;
end;
$$
language plpgsql;
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral