¿Cómo puedo configurar un formato de fecha y hora personalizado en Oracle SQL Developer?


198

Por defecto, el desarrollador de Oracle SQL muestra los valores de fecha como 15-NOV-11. Me gustaría ver la parte del tiempo (hora / minuto / segundo) por defecto.

¿Hay alguna forma de configurar esto dentro de Oracle SQL Developer?


Tengo problemas con esto antes. Puedo corregirlo para una sesión, pero una vez que cierro SQL Developer y luego lo reinicio de nuevo, pierdo la configuración. Entonces, esta solución que puedo proporcionar no es permanente.
Brett Walker

¿Puedes agregarle una respuesta? @BrettWalker, es mejor que nada.
ComfortablyNumb

55
Qué ridículo valor predeterminado para un tipo de datos llamado "FECHA" que realmente almacena precisión al segundo. Esto debe haber perdido el tiempo de mucha gente.
WW.

Respuestas:


398

Puede cambiar esto en las preferencias:

  1. Desde el menú de Oracle SQL Developer, vaya a: Herramientas > Preferencias .
  2. En el cuadro de diálogo Preferencias , seleccione Base de datos > NLS en el panel izquierdo.
  3. De la lista de parámetros NLS, ingrese DD-MON-RR HH24:MI:SSen el campo Formato de fecha .
  4. Guarde y cierre el cuadro de diálogo, ¡listo!

Aquí hay una captura de pantalla:

Cambio de preferencias de formato de fecha en Oracle SQL Developer


1
Estoy usando SQLDeveloper en Linux y esta configuración no funciona para mí ... ¿alguna otra forma?
Filipe

3
No importa qué formato coloque allí, se ignora. Veo que esto se genera en el sql: to_date ('02 -OCT-14 ',' YYYY-MM-DD '), así que ahora mi sql está simplemente roto.
James Watkins

este formato no me funcionó, tal vez debido a las diferencias de configuración regional de la plataforma ... vea mi respuesta si este no funciona
Donatello

2
¿Dónde se almacena esta configuración? en el DB o SQL Developer?
Kit de herramientas el

44

Me topé con esta publicación al intentar cambiar el formato de visualización de las fechas en sql-developer. Solo quería agregar a esto lo que descubrí:

  • Para cambiar el formato de visualización predeterminado, usaría los pasos proporcionados por ousoo, es decir, Herramientas> Preferencias> ...
  • Pero muchas veces, solo quiero conservar el DEFAULT_FORMAT mientras modifico el formato solo durante un montón de consultas relacionadas. Es entonces cuando cambiaría el formato de la sesión con lo siguiente:

    alter SESSION set NLS_DATE_FORMAT = 'my_required_date_format'

P.ej:

   alter SESSION set NLS_DATE_FORMAT = 'DD-MM-YYYY HH24:MI:SS' 

26

Con Oracle SQL Developer 3.2.20.09, logré configurar el formato personalizado para el tipo DATE de esta manera:

En: Herramientas> Preferencias> Base de datos> NLS

O: Outils> Préférences> Base de donées> NLS

AAAA-MM-DD HH24: MI: SS

Captura de pantalla del menú de configuración

Tenga en cuenta que el siguiente formato no me funcionó :

DD-MON-RR HH24: MI: SS

Como resultado, mantiene el formato predeterminado, sin ningún error.


3

Para cualquiera que todavía tenga un problema con esto; Por casualidad encontré esta página de Google ...

Póngalo así (Parámetros NLS) ... me queda en SQLDeveloper v3.0.04:

DD-MON-YY HH12:MI:SS AM or for 24-Hour, DD-MON-YY HH24:MI:SS 

Es importante tener en cuenta que el token de formato 'AM' se elimina para el formato de 24 horas. Si se utilizan los tokens 'AM' y 'HH24', el 'AM' anula el 'HH24'.
macawm

2

En mi caso, el formato establecido en Preferencias / Base de datos / NLS era [Formato de fecha] = RRRR-MM-DD HH24: MI: SSXFF pero en la cuadrícula se vieron 8 probablemente formato predeterminado RRRR / MM / DD (incluso sin tiempo) El formato tiene cambiado después de cambiar la configuración [Formato de fecha] a: RRRR-MM-DD HH24: MI: SS (sin 'XFF' al final).

No hubo errores, pero el formato con xff al final no funcionó.

Nota: en notación polaca RRRR significa AAAA


2
TL; DR: sin 'XFF' al final
Robert Andrzejuk

En Oracle, una fecha NO tiene una fracción de segundos. Una marca de tiempo hace. Entonces, Oracle está tratando de ser útil al no permitirle especificar algo que no funcionará.
Roy Latham el

0

Cuando copié el formato de fecha para la marca de tiempo y lo usé para la fecha, no funcionó. Pero cambiar el formato de fecha a esto (DD-MON-AA HH12: MI: SS AM) funcionó para mí.

El cambio debe hacerse en Herramientas-> Preferencias-> buscar NLS


0

Ir a Herramientas> Preferencias. En el árbol, seleccione Base de datos> NLS. Hay tres formatos de fecha / hora disponibles: fecha, marca de tiempo y marca de tiempo TZ. Editar el formato de fecha da el efecto deseado.

Como he dicho anteriormente; Este enfoque no me ha dado un cambio permanente.


jsyk, tu foto de perfil me recuerda a om don corleone (lugar equivocado para tal comentario)
Jonathan dos Santos

0

SQL Developer Versión 4.1.0.19

Paso 1: ve a Herramientas -> Preferencias

Paso 2: Seleccione Base de datos -> NLS

Paso 3: Vaya al Formato de fecha e ingrese DD-MON-RR HH24: MI: SS

Paso 4: haz clic en Aceptar.


-1

Tengo un problema relacionado que resolví y quería que la gente supiera acerca de mi solución. Usando SQL Developer exporté de una base de datos a csv, luego traté de importarlo a otra base de datos. Seguí recibiendo un error en mis campos de fecha. Mis campos de fecha estaban en el formato de marca de tiempo:

28-JAN-11 03.25.11.000000000 PM

La solución anterior (cambiar las preferencias de NLS) no funcionó para mí cuando importé, pero finalmente conseguí lo siguiente:

En la pantalla Definición de columna del Asistente de importación, ingresé " DD-MON-RR HH.MI.SSXFF AM" en el cuadro Formato y finalmente se importó correctamente. Desafortunadamente, tengo docenas de campos de fecha y, que yo sepa, no hay forma de aplicar sistemáticamente este formato a todos los campos de fecha, así que tuve que hacerlo manualmente ... suspiro. ¡Si alguien conoce una mejor manera, me encantaría escucharla!

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.