Ver Mensaje Individual
  #3 (permalink)  
Antiguo 12/11/2009, 15:40
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: pasar un campo varchar a date

que tal kaninox

primero hay que cambiar los datos al formato de mysql (yyyy-mm-dd) siendo la columna varchar (Esto se hace con la función str_to_date).
Posteriormente, hacer un alter table del campo para que no lo convierta a cero (0)

ejemplo:
Código mysql:
Ver original
  1. mysql> desc conv_fechas;
  2. +-------+-------------+------+-----+---------+-------+
  3. | Field | Type        | Null | Key | Default | Extra |
  4. +-------+-------------+------+-----+---------+-------+
  5. | fecha | varchar(10) | YES  |     | NULL    |       |
  6. +-------+-------------+------+-----+---------+-------+
  7. 1 row in set (0.05 sec)
  8.  
  9. mysql> select *from conv_fechas;
  10. +------------+
  11. | fecha      |
  12. +------------+
  13. | 12/11/2009 |
  14. +------------+
  15. 1 row in set (0.00 sec)
  16.  
  17. mysql> update conv_fechas set fecha=str_to_date(fecha,'%d/%m/%Y');
  18. Query OK, 1 row affected (0.00 sec)
  19. Rows matched: 1  Changed: 1  Warnings: 0
  20.  
  21. mysql> select *from conv_fechas;
  22. +------------+
  23. | fecha      |
  24. +------------+
  25. | 2009-11-12 |
  26. +------------+
  27. 1 row in set (0.00 sec)
  28.  
  29. mysql> alter table conv_fechas modify fecha date;
  30. Query OK, 1 row affected (0.06 sec)
  31. Records: 1  Duplicates: 0  Warnings: 0
  32.  
  33. mysql> select *from conv_fechas;
  34. +------------+
  35. | fecha      |
  36. +------------+
  37. | 2009-11-12 |
  38. +------------+
  39. 1 row in set (0.00 sec)
  40.  
  41. mysql> desc conv_fechas;
  42. +-------+------+------+-----+---------+-------+
  43. | Field | Type | Null | Key | Default | Extra |
  44. +-------+------+------+-----+---------+-------+
  45. | fecha | date | YES  |     | NULL    |       |
  46. +-------+------+------+-----+---------+-------+
  47. 1 row in set (0.00 sec)
  48.  
  49. mysql>


saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming