Developer

Como fazer REPLACE no MySQL

28 Feb 2014
16:48 | por Adriano Lima

Como fazer REPLACE no MySQL

Olá pessoal hoje venho dar uma dica bem legal.

 

Há algum tempo atrás no início da minha jornada como programador eu precisei migrar um cliente do domínio xyz.com para xpto.com, até ai tudo bem peguei todos os arquivos subi para o servidor novo, migrei a base, coloquei um .htacces no domínio antigo e vamos para produção que "tá bunito tá beleza".

Só que tudo não é tão simples quanto parece, quando o domínio era acessado "PUFF", o site não abria.

 

Lá vou investigar o que estava acontecendo, então precebi que no banco havia uma série de configurações com o domínio antigo do cliente.

 

E agora? O que eu faço?Ah ja sei, vou fazer um update!!!!

 

Eu pensei,  faco um select trago isso pro PHP parseio o resultado e faço um replace depois update, coisa linda, resolvo o problema do cliente e todos ficam felizes, porém minha cabeça ficava martelando como eu poderia fazer isso de outra forma, o que eu pensei anteriormente funcionaria e resolveria o problema, sim, mas mas aquilo ficou na minha cabeça.

 

Então pesquisando descobri que o MYSQL tem um função de replace assim como o PHP, essa função resolveria meu problema em segundos. Ela é bem simples de aplicar, veja no exemplo abaixo como ela seria aplicada em um update.

 

UPDATE tabela set coluna = replace(coluna, 'xyz.com', 'xpto.com');

 

Exemplo em um SELECT

 

SELECT replace(coluna, 'xyz.com', 'xpto.com') as coluna FROM tabela;

 

Pessoal tenham em mente que, não é por que você achou uma solução que funciona que ela é a mais adequada, procure sempre novos caminhos para otimizar seu código e conhecimento. Aqui mesmo no SouDev o temos uma post que fala sobre isso Pedreiro Digital não, Arquiteto da Informação.

 

Procure conhecer bem todas as ferramentas que você usa, não é porque você trabalha com PHP que deve saber somente isso.

Referência: dev.mysql.com/doc/refman/5.6/en/string-functions.html#function_replace

 

É isso ai galera, até a próxima.

Adriano Lima

Adriano Lima

Adriano Lima é Bacharel em Sistemas de informação e trabalha como Analista Programador na  Ibaro.
Trabalha atualmente com PHP, MYSQL, PostgreSQL, JavaScript, JQuery e MVC.

Comentários

Poste aqui seu comentário, crítica, dúvida ou sugestão. .
Promovam um debate sadio pois comentários ofensivos serão removidos.