Notice: Undefined index: Archivo in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 400
Notice: Undefined index: Archivo in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 400
Notice: Undefined index: Archivo in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 400
Notice: Undefined index: Sobre mi in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 400
Notice: Undefined index: Sobre mi in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 400
Notice: Undefined index: MySql in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: https://codigolinea.com/category/mysql/ in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 523
Notice: Undefined index: General in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: 97-things in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: JavaScript in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: TypeScript in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: Cheat Sheet in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: Zend Framework in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: Symfony Framework in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: Patrones de Diseño in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: Programacion Funcional in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: Ingeniería de Software in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: Patrones de Comportamiento in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: MySql in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: https://codigolinea.com/tag/mysql/ in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 523
Notice: Undefined index: scrum in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: agile in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: scala in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: solid in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: Nuevo in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: elixir in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: fsharp in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: amfphp in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: fechas in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 506
Notice: Undefined index: https://codigolinea.com/tag/fechas/ in /home/codigoli/public_html/wp-content/plugins/seo-automatic-links/seo-links.php on line 523

MySql cuando almacena una fecha lo hace deacuerdo a la norma ISO 8601 esto es YYYY-mm-dd.
¿Por que MySql Almacena fecha en ese formato?
La explicación es muy amplia y no lo trataremos ahora, pero lo podemos resumir en los siguientes puntos:
– Evitar formatos ambiguos
– Tener un formato único y universal
– Poder ser organizados de más a menos significativo
– Estar en formato ordenable, incluso si tratáramos a las fechas como cadenas de texto, podríamos ordenarlas alfabéticamente.
Si ingresamos una fecha que no cumpla con ese formato, simplemente provocará un error, ya que no sera recocido como fecha válida.
¿Como podemos solucionar esto?
Mysql Contiene una función llamada GET_FORMAT con el cual podemos insertar fechas con distinto formato, solo le tenemos que indicar en que formato estamos recibiendo la fecha para que MySQL luego lo procese.
Los formatos que acepta GET_FORMAT son los siguientes
Llamada función | Resultado |
GET_FORMAT(DATE,’USA’) | ‘%m.%d.%Y’ |
GET_FORMAT(DATE,’JIS’) | ‘%Y-%m-%d’ |
GET_FORMAT(DATE,’ISO’) | ‘%Y-%m-%d’ |
GET_FORMAT(DATE,’EUR’) | ‘%d.%m.%Y’ |
GET_FORMAT(DATE,’INTERNAL’) | ‘%Y%m%d’ |
GET_FORMAT(DATETIME,’USA’) | ‘%Y-%m-%d %H.%i.%s’ |
GET_FORMAT(DATETIME,’JIS’) | ‘%Y-%m-%d %H:%i:%s’ |
GET_FORMAT(DATETIME,’ISO’) | ‘%Y-%m-%d %H:%i:%s’ |
GET_FORMAT(DATETIME,’EUR’) | ‘%Y-%m-%d %H.%i.%s’ |
GET_FORMAT(DATETIME,’INTERNAL’) | ‘%Y%m%d%H%i%s’ |
GET_FORMAT(TIME,’USA’) | ‘%h:%i:%s %p’ |
GET_FORMAT(TIME,’JIS’) | ‘%H:%i:%s’ |
GET_FORMAT(TIME,’ISO’) | ‘%H:%i:%s’ |
GET_FORMAT(TIME,’EUR’) | ‘%H.%i.%s’ |
GET_FORMAT(TIME,’INTERNAL’) | ‘%H%i%s’ |
Para demostrar el uso de esta función voy a crear una tabla:
CREATE TABLE `demo` ( `id` int(11) NOT NULL auto_increment, `fecha` date default NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB
Supongamos que recibimos un fecha con el siguiente formato 15/01/2005 (dd/mm/YYYY). . Esto lo insertaremos de la siguiente manera.
INSERT INTO demo (fecha) VALUES (STR_TO_DATE(REPLACE('15/01/2005','/','.') ,GET_FORMAT(date,'EUR')))
Explicaré lo que hace la sentencia
Convertimos la cadena de texto a un formato fecha con STR_TO_DATE.
Usamos REPLACE para reemplazamos las barras por el punto (.), según nuestra tabla de formatos.
Con GET_FORMAT(date,’EUR’) le decimos al mysql que la fecha que vamos ingresar esta en formato europeo
Probemos con otra fecha, insertaremos una fecha con el siguiente formato 10.31.2003 (mm.dd.YYYY)
INSERT INTO demo (fecha) VALUES (STR_TO_DATE('10.31.2003' ,GET_FORMAT(date,'USA')))
Verificamos nuestros datos insertados, y vemos que esta en el formato estándar.
mysql: select * from demo; +----+------------+ | id | fecha | +----+------------+ | 1 | 2005-01-15 | | 2 | 2003-10-31 | +----+------------+ 2 rows in set (0.00 sec)
Espero que les sea de mucha utilidad y les evite muchos dolores de cabeza.
Hasta la próxima!
Yo uso datetime, para los registros donde guardaras fecha y hora(y eso mismo recomienda la gente de mysql).
Grande!!!
Hola buenas tardes, como puedo insertar varias fechas con horas simultáneamente en un mismo evento creado.
Por ejemplo
Evento #2
Descripción : xxxxx
Lugar: xxx
Presupuesto: xxx
Fecha
* 2/9/18 Horario 4pm a 7pm
*5/9/18 Horario 5 pm a 8 pm
*20/9/18 Horario 11am a 5 pm
Podrías definir campos diferentes de tipo fecha (date) y otros tipo hora (time).
Como puedo comparar una fecha que esta en un String como la siguiente ’02-01-2019 07:27:24′ (d-m-y H:i:s ) con otra fecha que está así: ‘2019-12-24 09:34:00’ (Y-m-d H:i:s).
Espero puedan ayudarme.
Saludos
Hola Moisés,
Pues convierte las fechas a un formato común y haz la comparación
Gracias por el post
De nada!