none
Cambiar el formato de fecha a ddMMyyyy

    Dotaz

  • Buenas noches amigos tengo el siguiente conflicto tengo aplicaciones con las cuales manejo fechas y estas estan en formato dd/MM/yyyy por razones de virus tuve que formatear mi maquina y al instalar el sql ahora resulta que las fechas debo registrar MM/dd/yyyy.

    Existe alguna manera de cambiar el formato de las fechas en sql server express 2008 espero pueda ayudarme.

    Soy nuevo en sql server estare atento a sus concejos y agradecerles de antemano

    Saludos

    24. dubna 2013 4:18

Odpovědi

  • Se puede cambiar el formato mediante esta sentencia:

    SET DATEFORMAT DMY

    o bien

    SET LANGUAGE SPANISH

    Nótese que este cambio solo dura mientras esté abierta la conexión. Al cerrarla, el ajuste de idioma/fecha vuelve al valor predeterminado del servidor. Si quieres cambiar el idioma por defecto, puedes hacerlo desde SQL Server Management Studio, abriendo las Propiedades del servidor y en la pestaña "Advanced", "Miscelaneous", "Default Language" puedes cambiar el valor seleccionado.

    Si no dispones de un SSMS para tu versión Express, puedes haces ese mismo cambio con estas sentencias:

    EXEC sys.sp_configure N'default language', N'5'
    GO
    RECONFIGURE WITH OVERRIDE
    GO

    • Označen jako odpověď deiby.lf 26. dubna 2013 18:07
    24. dubna 2013 5:51

Všechny reakce

  • Se puede cambiar el formato mediante esta sentencia:

    SET DATEFORMAT DMY

    o bien

    SET LANGUAGE SPANISH

    Nótese que este cambio solo dura mientras esté abierta la conexión. Al cerrarla, el ajuste de idioma/fecha vuelve al valor predeterminado del servidor. Si quieres cambiar el idioma por defecto, puedes hacerlo desde SQL Server Management Studio, abriendo las Propiedades del servidor y en la pestaña "Advanced", "Miscelaneous", "Default Language" puedes cambiar el valor seleccionado.

    Si no dispones de un SSMS para tu versión Express, puedes haces ese mismo cambio con estas sentencias:

    EXEC sys.sp_configure N'default language', N'5'
    GO
    RECONFIGURE WITH OVERRIDE
    GO

    • Označen jako odpověď deiby.lf 26. dubna 2013 18:07
    24. dubna 2013 5:51
  • Si quieres evitarte problemas de cómo interpreta SQL Server una cadena como fecha, envíala siempre en formato yyyyMMdd o yyyyMMdd hh:mn:ss y no te tendrás que preocupar del lenguaje ni otras configuraciones.
    24. dubna 2013 7:00
  • Carlos y Alberto muchas gracias por responder pero mi problema es que yo tengo instaladores no tengo el codigo para modificar y desearia poder cambiar el formato de la fecha definitivamente.

    Una consulta Alberto y disculpa mi ignorancia como es eso que solo dura mientras esta abierta la conexion pregunto esto por que

    En la mayoria de los programas cuando realiza la consulta a la base de datos abre la conexion consulta y luego la cierra es algo asi

    conexion.open()

    ejecutarconsulta()

    conexion.close()

    Disculpa el codigo espero se pueda comprender.

    Por ese motivo quisiera cambiar el formato definitivamente;

    Y Carlos muchas gracias de hoy en adelante siempre guardare con el formato yyyyMMdd

    Espero puedan ayudarme muchas gracias por responder

    Saludos

    24. dubna 2013 18:01
  • Efectivamente, si haces un open, seguido de la consulta, seguido de un close, cada vez que hagas estas operaciones hay que cambiar el formato dentro de esa consulta. Si no tienes el fuente del programa, no te sirve como solución. Pero si tienes el fuente y está estructurado de forma que siempre abres la conexión pasando por una única subrutina que te devuelve la conexión abierta, entonces es muy sencillo enviar el SET DATEFORMAT cada vez que la conexión se abre (no hay más que tocar esa única subrutina).

    Si quieres cambiar permanentemente la configuración del servidor, haz lo que te indico en la segunda parte de mi respuesta anterior; eso es permanente y afecta a todas las conexiones.

    24. dubna 2013 18:19
  • Muchas gracias hare lo que dices y luego te comento como me fue.

    Gracias por la ayuda

    Saludos.

    24. dubna 2013 18:23
  • Pero si da igual como tengas definido el idioma en tu bbdd. Si desde tu aplicación cuando accedes a datos de tipo fecha usas parámetros DATETIME en las llamadas a procedimientos almacenados o consultas puedes olvidarte del formato. Luego en tu capa de presentación formatearias ese campo datetime al formato definido en tu cultura...

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    24. dubna 2013 18:25
  • Bueno amigos hice todo lo posible por corregir el problema con formatos de la fecha en sql server express 2018 y lamentablemente no es posible

    sigui tu consejo Alberto cambie el idioma desde aleman español brasilero hasta japones y no dio

    por desgracia no cuento con el codigo para realizar modificaciones.

    La Solucion para resolver dicho problema es RE-Instalar sql server en español

    Muchas gracias a todos por el interes

    Saludos cordiales

    26. dubna 2013 18:06