[pgbr-geral] Varchar com espaços desnecessários.

Fernando Grassi de Oliveira fgrassi em gmail.com
Quarta Novembro 12 20:06:54 UTC 2008


Como ja foi falado, voce pode usar o trim para excluir espacos em branco.
Pode-se, ainda, remover substring de strings, usando o trim.


De uma olhada em
http://www.postgresql.org/docs/8.1/static/functions-string.html para
ver outras funções de manipulação de strings.

para fazer a função que você precisa, podes utilizar o seguinte select
para ter uma idéia

select ps.tablename
	, ps.attname
	,pt.typname
	from pg_stats ps
	,pg_attribute pa
	,pg_type pt
	where schemaname='public'
	and ps.attname=pa.attname
	and pt.typelem=pa.atttypid

Não ajudo a construir mais porque hoje estou com pouco tempo, mas se
desenvolver algo, não esqueça de nos avisar.

Fernando Grassi de Oliveira
fgrassi em gmail.com



2008/11/12 Jota <jota.comm em gmail.com>:
> Olá,
>
> Você pode criar uma função para fazer isso e acessar as tabelas de
> sistema e o information_schema para obter estas informações.
>
> Pronto eu desconheço qualquer função do genero.
>
> []s
>
> 2008/11/12 Antonio Prado <suporte em antonioprado.eti.br>:
>> Em Qua, 2008-11-12 às 16:44 -0300, Emerson Casas Salvador escreveu:
>>> Antonio Prado escreveu:
>>> > Em Qua, 2008-11-12 às 16:08 -0200, Fernando Grassi de Oliveira escreveu:
>>> >
>>> >> Você quer identificar o tipo de uma coluna, em uma tabela por exemplo,
>>> >> e trocar/converter para outro tipo? Ou você quer excluir "sujeira" em
>>> >> campos do tipo varchar?
>>> >>
>>> >
>>> > Desejo excluir "sujeira".
>>> >
>>> > Algo assim: "FULANO DE TAL              "
>>> > Ficar assim: "FULANO DE TAL"
>>> >
>>> >
>>> > Antonio
>>> >
>>> >
>>> >
>>> senda=# SELECT * FROM teste;
>>>      nome
>>> --------------
>>>    joao
>>>   maria
>>>  jose
>>>    airton
>>> (4 rows)
>>>
>>> senda=# UPDATE teste SET nome=trim(nome);
>>> UPDATE 4
>>> senda=# SELECT * FROM teste;
>>>   nome
>>> --------
>>>  joao
>>>  maria
>>>  jose
>>>  airton
>>> (4 rows)
>>
>>
>> Correto, é isto que desejo fazer, porém a questão é: tem uma forma de eu
>> criar uma instrução que percorra todas as tabelas da base e realize tal
>> operação em todos os registros tipo varchar ?
>>
>> Antonio.
>>
>>
>>
>>
>>
>> _______________________________________________
>> pgbr-geral mailing list
>> pgbr-geral em listas.postgresql.org.br
>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>>
>
>
>
> --
> João Paulo
> www.dextra.com.br/postgres
> PostgreSQL
> _______________________________________________
> pgbr-geral mailing list
> pgbr-geral em listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>


More information about the pgbr-geral mailing list