2009/9/4 JotaComm <[email protected]>
>
> <corte>
>>
>> 2009/9/4 JotaComm <[email protected]>:
>> > Olá, Jorge
>> >
>> > Existe sim. É só fazer um função utilizando a linugagem PL/pgSQL para
>> > conseguir isso.
>> >
>> > Dica: Utilize SQL diânimco.
>>
A dica do Jota de criar uma PL/pgSQL mais o SQL abaixo você está com a
solução "quase" pronta:
select 'ALTER TABLE '||table_schema||'.'||table_name||' OWNER TO
nome_do_usuario;'
from information_schema.tables
where table_schema not in ('pg_catalog', 'information_schema', 'pg_toast')
and table_schema !~ '^pg_temp'
union all
select 'ALTER TABLE '||sequence_schema||'.'||sequence_name||' OWNER TO
nome_do_usuario;'
from information_schema.sequences
where sequence_schema not in ('pg_catalog', 'information_schema', 'pg_toast')
and sequence_schema !~ '^pg_temp'
union all
select 'ALTER SCHEMA '||schema_name||' OWNER TO nome_do_usuario;'
from information_schema.schemata
where schema_name not in ('pg_catalog', 'information_schema', 'pg_toast')
and schema_name !~ '^pg_temp';
Os SELECTs acima geram os ALTERs necessários para modificar o dono dos
objetos TABLE, SEQUENCE e SCHEMA para o usuário denominado
*nome_do_usuario*.
Espero ter ajudado...
--
Fabrízio de Royes Mello
>> Blog sobre TI: http://fabriziomello.blogspot.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral