es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cambiar el formato de retorno del selector de fechas de Bootstrap

Estoy utilizando un selector de fechas de Bootstrap en una aplicación web de C#.
La aplicación se conecta a una base de datos Oracle 11g.

El selector de fechas devuelve la fecha en el formato YYYY-MM-DDThh:mm, por ejemplo, 2021-12-21T09:46. Ninguna de las funciones to_date en 11g que conozco puede manejar esto. He intentado lo siguiente.

select TO_DATE ('2021-12-21T09:46', 'YYYY-MM-DDThh:mi') from dual; -- ORA-01821: formato de fecha no reconocido

select TO_TIMESTAMP ('2021-12-21T09:46', 'YYYY-MM-RRTHH24:MI') from dual; -- ORA-01821: formato de fecha no reconocido

select TO_TIMESTAMP_TZ ('2021-12-21T09:46', 'YYYY-MM-DDTHH:MI:SS') from dual; -- ORA-01821: formato de fecha no reconocido

SELECT SYSTIMESTAMP FROM DUAL; -- ORA-01821: formato de fecha no reconocido

select TO_TIMESTAMP_TZ ('2021-12-21T09:46:00', 'YYYY-MM-DDThh:mm:ss') from dual; -- ORA-00904: "TO_TIMESTAMP_TZ": identificador no válido

¿Existe otra función que pueda usar?

¿Existe alguna manera de cambiar el formato en el que devuelve la fecha el selector de fechas? Ten en cuenta que necesito cambiar la fecha DEVUELTA, no la fecha MOSTRADA.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Desafortunadamente, ninguna de las funciones TO_ en Oracle 11g puede manejar el formato devuelto por el seleccionador de fechas Bootstrap. Sin embargo, hay una solución alternativa. Puede convertir la cadena a una fecha utilizando las funciones SUBSTR y TO_NUMBER, y luego convertirla a un tipo de fecha. Aquí hay un ejemplo:

    SELECT TO_DATE(SUBSTR('2021-12-21T09:46', 1, 10) || ' ' ||
                 TO_NUMBER(SUBSTR('2021-12-21T09:46', 12, 2)) || ':' ||
                 TO_NUMBER(SUBSTR('2021-12-21T09:46', 15, 2)),
                 'YYYY-MM-DD HH24:MI') FROM DUAL;
    

    Esto devolverá una fecha en el formato ‘DD-MON-YY’.

    En cuanto a cambiar el formato devuelto por el seleccionador de fechas, puede utilizar la opción de formato proporcionada por el plugin del seleccionador de fechas. Por ejemplo, si desea devolver la fecha en formato ‘MM/DD/YYYY’, puede utilizar el siguiente código:

    $('.datepicker').datepicker({
        format: 'mm/dd/yyyy'
    });
    

    Esto cambiará el formato de la cadena de fecha devuelta por el seleccionador de fechas. Sin embargo, si necesita cambiar el formato de la fecha que ya se devuelve, deberá utilizar una función de conversión como se describe anteriormente.

Comments are closed.