Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Formatear Fechas

Estas en el tema de Formatear Fechas en el foro de Oracle en Foros del Web. Hola a Todos mi pregunta es esta: tengo un Stored Procedure graba informacion en una tabla, entre los campos que graba estan 2 campos fecha ...
  #1 (permalink)  
Antiguo 13/05/2009, 09:03
Avatar de enunez810  
Fecha de Ingreso: junio-2003
Ubicación: Caracas, Venezuela
Mensajes: 98
Antigüedad: 21 años, 5 meses
Puntos: 0
Formatear Fechas

Hola a Todos mi pregunta es esta: tengo un Stored Procedure graba informacion en una tabla, entre los campos que graba estan 2 campos fecha fecha_ini y Fecha_Fin dependiendo dela maquina que ejecute el Stored Procedure a veces graba por ejemplo "18/01/2009" lo cual es lo que yo quiero y en otras maquinas graba 18/Jan/2009 o sea el mes lo pone en letras, googleando este problemita parace que es algo con el cliente de Oracle pero no puedo buscar en todas las maquinas que podran ejecutar este SP y cambiar la variable que me dicen por ahi

Como hago para que no importa lo que haga grabe la fecha en formato "18/05/2009" y no en "18/May/2009"

Gracias de Antemano !!!!!
  #2 (permalink)  
Antiguo 14/05/2009, 02:07
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: Formatear Fechas

Haz un ALTER SESSION y le pones como NLS_DATE_FORMAT el formato de fecha que quieras.
  #3 (permalink)  
Antiguo 14/05/2009, 07:04
Avatar de enunez810  
Fecha de Ingreso: junio-2003
Ubicación: Caracas, Venezuela
Mensajes: 98
Antigüedad: 21 años, 5 meses
Puntos: 0
Respuesta: Formatear Fechas

Hola Gracias por responder pero no entendi muy bien tu ayuda tu dices que ponga eso donde en el Stored Procedure ?

o sea pondria

ALTER SESSION
Begin
NLS_DATE_FORMAT='DD/MM/YYYY'
End;

Eso es lo que quisiste decir !!!!!

Gracias de Antemano !!!!
  #4 (permalink)  
Antiguo 14/05/2009, 07:41
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: Formatear Fechas

Exacto, eso es lo que quise decir, pero no se pone así.

Para meterlo dentro del procedure la sintaxis correcta sería esta :

EXECUTE ImMEDIATE ('ALTER SESSION SET NLS_DATE_FORMAT = ''DD-MM-YYYY''');

Peeeeeeeeeeeeero, si hubieras tecleado en el google esto : ALTER SESSION NLS_DATE_FORMAT, hubieras encontrado links muy interesantes y no hubieras estado a expensas que que se te contestara aquí.
  #5 (permalink)  
Antiguo 14/05/2009, 18:59
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 8 meses
Puntos: 7
Respuesta: Formatear Fechas

"ces graba por ejemplo "18/01/2009" lo cual es lo que yo quiero y en otras maquinas graba 18/Jan/2009 "

si pasa eso seguramente es por que ese campo es varchar en lugar de date, ya que si fuera date no me cuadra el problema

ahora suponiendo que lo quieres seguir manteniendo varchar entonces lo que haria es cambiar el procedure, en el insert especificar el formato de la fecha que quieres guardar, algo como

insert into tabla values (campo = to_date(campo_in_del_procedure, 'dd/mm/yyyy')
__________________
Blogzote.com :-) Mi blog
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:25.