Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/03/2013, 21:16
Avatar de bandolera
bandolera
 
Fecha de Ingreso: abril-2009
Mensajes: 613
Antigüedad: 15 años, 8 meses
Puntos: 7
Pregunta Respuesta: Convertir Fecha Varchar a Date

Cita:
Iniciado por gnzsoloyo Ver Mensaje
La primera sugerencia es jamás guardar una fecha en un campo VARCHAR. Con eso solamente te vas a ganar problemas a corto plazo.
Las fechas se deben guardar como DATE, DATETIME o TIMESTAMP, pero nunca como VARCHAR, y menos aún con un formato DD/MM/YYYYY.

Ahora tienes que reconvertir esa "cosa" para que siva, para lo cual deberás usar una función denominada STR_TO_DATE().

El principal consejo que te puedo dar es que lo hagas en forma definitiva, es decir:
1) Agrega una columna de tipo DATE.
Código MySQL:
Ver original
  1. ALTER TABLE tabla ADD COLUMN fecha_nueva DATE;
2) Haz un UPDATE masivo para corregir ese defecto:
Código MySQL:
Ver original
  1. UPDATE fecha_nueva = STR_TO_DATE(fecha, '%d/%m/%Y');
3) Verifica el resultado y luego elimina ese campo mal creado.
Código MySQL:
Ver original
  1. ALTER TABLE tabla DROP COLUMN fecha;
4) Renombra el campo como el anterior:
Código MySQL:
Ver original
  1. ALTER TABLE tabla CHANGE fecha_nueva fecha DATE;
5) Y muy importante: modifica tu aplicación para que inserte las fechas en su correcto formato, así como las consultas para que te las muestre como desees.
Gracias me sirvió bastante.
Tengo una consulta más.
Estoy usando Xampp 1.8.1 y he usado el editor de phpmyadmin
Cómo hago para escribir:
'nombre_tabla' en vez de `nombre_tabla` Se puede?
Gracias.
__________________
Todos somos iguales. NO! a la violencia de género.