Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Overhead

Alterar o tipo do campo sem perder os registros

Recommended Posts

Bom dia,

 

Pessoal na tabela tem um campo com o nome: data_do_acidente o tipo dela é varchar(10).

Os dados estão gravados dessa maneira 10/10/2009, 11/10/2009, 12/10/2009 e assim por diante

 

Eu queria alterar o tipo dela para Date mais que não perdesse os valores já registrados. Porque se eu chegar e soh alterar o tipo, os valores já registrados ficarão 0000-00-00

 

Tem como solucionar esse problema?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basicamente você pode fazer o seguinte:

 

UPDATE nome_tabela SET campo_data REVERSE(campo_data);

UPDATE nomoe_tabela SET campo_data REPLACE(campo_data, '/','-');

 

e depois é só correr p abraço.. ainda não, depois é só converter p tipo Date, aí sim, pode correr p abraço :)

 

[]

Compartilhar este post


Link para o post
Compartilhar em outros sites

se você fizer como sugerido acima vai explodir o banco todo

 

select reverse('18/11/1983') -> 3891/11/81

faça o seguinte

 

update taba 
set
data_do_acidente = CONCAT(right(data_do_acidente,4) ,'-', left(right(data_do_acidente,7),2)    ,'-', left(data_do_acidente,2))


alter table taba modify column data_do_acidente date

Compartilhar este post


Link para o post
Compartilhar em outros sites

se você fizer como sugerido acima vai explodir o banco todo

 

select reverse('18/11/1983') -> 3891/11/81

faça o seguinte

 

update taba 
set
data_do_acidente = CONCAT(right(data_do_acidente,4) ,'-', left(right(data_do_acidente,7),2)    ,'-', left(data_do_acidente,2))


alter table taba modify column data_do_acidente date

Eita erro tosco.. tem toda razão.. usar reverse aí vai dar um resultado totalmente do esperado.. é nisso q dá tentar resolver as coisas sem analisar.. valeu pela atenção..

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.