Programación General > Power Builder
que pasa con la fecha y mi codigo
darksito:
hola bueno se que este tema ya esta demasiado tocado y quisiera saber porque estoo me sucede :hitcomp:
Bueno es lo que me sucede pondre imagenes asi me dare a entender
base de datos sql 2000
tabla fecha
tipo datetime
supongamos que ese es mi formulario un datapick y un boton guadar
en el boton guadar puse esto
--- Código: C++ ---//Declaro variable datetime fechafecha=datetime(dp_1.text) INSERT INTO t_fecha ( fecha ) VALUES ( :fecha ) ;
supuestamente deberia guardarme pero no lo hace :ouch:
pero si lo guardo como texto normal si me guarda sin convertira tipo date o datetime y me ocaciona otro problem
que cuando voy a crear mi consulta en dw entre dos fechas
ingreso las fechas 20/07/2009 y 30/11/2009 para buscar fechas entre ese rango ya que en mi tabla hay fechas q introduci manualmente 24/09/09 , 23/09/09
no se que pueda suceder ya cambie la configuracion regional y todo lo demas porfavor quisiera q me ayuden
Juanra15:
Hola Darksito, una pregunta, que version de Power Builder usas?
provaste al convertir la fecha a string darle el formato? ej: fecha = String(Today(), "yyyy/mm/dd") si solo vas a pasar la fecha declaralo como DATE (no como DATETIME).
Yo al trabajar con fechas las las guardo en la DB como char(8) con el siguiente formato 20091024 = 23/10/2009, tengo una funcion guardada que convierte al char(8) al formato fecha, asi las busquedas y filtros en la DB me queda mas practico, espero que te sirva de algo.
Saludos :good:
darksito:
hola man me podrias pasar un ejemplo haci sencillo uff nu sabes cuanto me ayudaria no se antes me guardaba normal ahora no !! estoy algo desauciado y quiero romper mi compu xD gracias
uso la 11.5 y tambien prove en 10.5
F_Tanori:
El formato Estandar Internacional es YYYYMMDD el cual no necesita ningun formateo ni tampoco separadores
La verdad es que no es buena idea almacenar Fechas como texto, pues no se manipulan de la misma manera, no utilizan los mismos espacios, ni tampoco se obtienen los mismos resultados
Puedes convertirlo a Date
--- Código: Visual Basic --- fecha=date(dp_1.text)
o
a DateTime
--- Código: Visual Basic --- fecha=datetime(dp_1.text,Now())
--- Código: Visual Basic --- INSERT INTO t_fecha ( fecha ) VALUES ( :fecha ) using SQLCA ; if SQLCA.SQLCODE<>0 then MsgBox (string(fecha),SQLCA.SQLErrText)End if
Comprueba el error que obtienes
Saludos
darksito:
bueno ahora no me ocurre ningun problema en guardar pero ocurre esto q en mi base de datos se guarda 01/01/1900 y estamos 2009 y eleji diferentes fechas pero aun asi
esta tabla la cree para ver si funcionaba el codigo
que puedo hacer respecto a este problema ya reconfigue el idioma soy de peru
dd/mm/yyyy
Navegación
[#] Página Siguiente
Ir a la versión completa