Ir para o conteúdo
SLIFE

Replace com Char(13)

Mensagens Recomendadas

SLIFE

Boas a todos

Estou aqui com um problema e precisava da vossa ajuda.

Tenho uma base de dados, com uma tabela Produtos

Inicialmente tinha o codigo em php que lia da base de dados e interpertava a leitura e quando encontrava na string um '\r\n'

fazia um break line.

Mas depois alterei o codigo, e essa descricao deixou de fazer sentido, e esta a complicar-me a vida agora na base de dados

Pois quando o php vai buscar a base de dados a string fica toda desconfigurada e com o '\r\n' visiveis.

Agora tenho de ir alterar artigo a artigo esta situacao.

Pelo que me lembrei se daria para fazer um replace na base de dados.

Tenho algo deste genero:

UPDATE produtos SET descricao_l1 = (REPLACE(descricao_l1,'\r\n',char(13)) WHERE id_produto = 64

Mas nao funciona, dá erro.

Será que alguem me consegue ajudar a resolver isto!

Desde já obrigado

Cpts

SJC

Editado por pmg
GeSHi

Sandro Coelho

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pmg

Porque nao simplesmente apagar o '\r'??

UPDATE produtos SET descricao_l1 = (REPLACE(descricao_l1, '\r', '') WHERE id_produto = 64

Ou, se preferires uma alteracao mais pequena usa '\n' em vez da funcao CHAR() (???)

UPDATE produtos SET descricao_l1 = (REPLACE(descricao_l1, '\r\n', '\n') WHERE id_produto = 64

Editado por pmg
codigo testado e solucao mais parecida com a original

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
SLIFE

Bom dia

O estranho e que se fizer um select a tabela produtos contendo a letras '\r\n' ele nao me devolve nada.

Nao sei porque!

Se o texto esta no meio da string, e nao encontra, da-me 0 rows afected.

SELECT * FrOM produtos WHERE descricao_l1 LIKE '%\r\n%'

Isto nao me devolve nada.

Mas se for percorrer a base de dados existe inumeros produtos com o campo descricao_l1 em que contem algo do genero:

DISPONIVEL EM: AMARELO\r\nPINTADO.

Porque sera que o sql nao recolhece na string.

Editado por SLIFE
geshi

Sandro Coelho

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
brunoais

Ele está a usar o \r\n literais. Deve haver alguma maneira para ele converter para os whitespace characters correspondentes, mas agora não me estou a lembrar.


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.