Foros del Web » Programando para Internet » ASP Clásico »

leer registro de fecha/hora

Estas en el tema de leer registro de fecha/hora en el foro de ASP Clásico en Foros del Web. Tengo duda de algo que me imagino se puede hacer, pero no se cómo. Tengo una base de datos (la cual por cierto no la ...
  #1 (permalink)  
Antiguo 05/01/2002, 15:04
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
leer registro de fecha/hora

Tengo duda de algo que me imagino se puede hacer, pero no se cómo. Tengo una base de datos (la cual por cierto no la elaboro yo, y no la puedo modificar)compuesta por varios campos: ID, NAME, DATE, etc. El campo DATE tiene un tipo de datos fecha/hora. Un ejemplo es el siguiente:

20/12/01 10:31:17 a.m.

necesito desplegar información en la cual yo pueda escoger una fecha inicial y una fecha final, por ejemplo, mostrar los ID y NAME entre el 20/12/01 y 01/01/02, pero ignorando la hora. Es decir, que mi query en SQL ignore la parte de la hora y me lea la fecha únicamente. La página de resultado recibe los datos de fecha inicial y fecha final por medio de un request.form.

Se puede hacer esto? gracias por la ayuda.

Slds
  #2 (permalink)  
Antiguo 05/01/2002, 15:17
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: leer registro de fecha/hora

espero te sirva hice algo parecido solo lo tienes que adaptar
<%
Fecha=Now
Response.Write Fecha &"<BR>"
Dia=Day(Fecha)
Mes=Month(Fecha)
anio=Year(Fecha)
Fecha=dia&"/"&mes&"/"&anio
Response.Write Fecha &"<BR>"

%>

salu2 :) ;)

<embed src="http://www.autocar.com.mx/images/logo.swf" type="application/x-shockwave-flash" width="468" height="60" play="true" wmode="transparent" menu="false" loop="true">
  #3 (permalink)  
Antiguo 05/01/2002, 16:14
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

excelente !!!!, estaba sencillo y no se me habia ocurrido!!!. Solo tengo una duda: la fecha final no me la incluye en los resultados, por que sera??. Mi codigo es el siguiente:

'recibo los valores del usuario
month1 = Request.form(&quot;month1&quot;)
month2 = Request.form(&quot;month2&quot;)
day1 = Request.form(&quot;day1&quot;)
day2 = Request.form(&quot;day2&quot;)
year1 = Request.form(&quot;year1&quot;)
year2 = Request.form(&quot;year2&quot;)
lang = Request.form(&quot;lang&quot;)'este es referido al idioma, esp(español) o eng(ingles)

'defino fecha inicial y final
date1= day1&amp;&quot;/&quot;&amp;month1&amp;&quot;/&quot;&amp;year1
date2= day2&amp;&quot;/&quot;&amp;month2&amp;&quot;/&quot;&amp;year2

'SQL
Set RS = objConn.execute(&quot;SELECT * FROM tabla WHERE fecha between #&quot;&amp;date1&amp;&quot;# and #&quot;&amp;date2&amp;&quot;# and language='&quot;&amp;lang&amp;&quot;' ORDER BY ID&quot; )

porque me salen los resultados con date2 igual a un dia antes de lo que escogí
  #4 (permalink)  
Antiguo 05/01/2002, 17:00
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: leer registro de fecha/hora

no pues si esta raro, estas seguro que hay alguno con la date2?

a lo mejor ni siquiera existe un registro asi

digo... posiblemente

salu2 :)

<embed src="http://www.autocar.com.mx/images/logo.swf" type="application/x-shockwave-flash" width="468" height="60" play="true" wmode="transparent" menu="false" loop="true">
  #5 (permalink)  
Antiguo 05/01/2002, 17:26
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

pues sí, fijate que sí existe un registro con date2. No tengo idea porque no me lo está tomando en cuenta....
  #6 (permalink)  
Antiguo 06/01/2002, 00:55
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: leer registro de fecha/hora

oye tu campo fecha de la base de datos esta declarado como tipo fecha o como texto por que si es como fecha tal vez seria conveniente que hicieras esto

date1= Cdate(day1&amp;&quot;/&quot;&amp;month1&amp;&quot;/&quot;&amp;year1)
date2= Cdate(day2&amp;&quot;/&quot;&amp;month2&amp;&quot;/&quot;&amp;year2)


salu2

<embed src="http://www.autocar.com.mx/images/logo.swf" type="application/x-shockwave-flash" width="468" height="60" play="true" wmode="transparent" menu="false" loop="true">
  #7 (permalink)  
Antiguo 06/01/2002, 15:15
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

efectivamente el campo está declarado como fecha. Probé lo que me sugerías, y pues creería que entonces talvez debería hacer un cambio en la sentencia de sql, porque no me da ningún resultado, y sí se que lo hay. Quedaria la sentencia de sql igual si hago los cambios que me sugerías?, quedaría asi?

date1= Cdate(day1&amp;&quot;/&quot;&amp;month1&amp;&quot;/&quot;&amp;year1)
date2= Cdate(day2&amp;&quot;/&quot;&amp;month2&amp;&quot;/&quot;&amp;year2)

Set RS = objConn.execute(&quot;SELECT * FROM tabla WHERE fecha between #&quot;&amp;date1&amp;&quot;# and #&quot;&amp;date2&amp;&quot;# and language='&quot;&amp;lang&amp;&quot;' ORDER BY ID&quot; )


gracias siempre por tu ayuda
  #8 (permalink)  
Antiguo 06/01/2002, 15:29
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: leer registro de fecha/hora

hola creo que si quedaria igual ahora bien encontre algo que tal vez te interese

creo que dee ser asi

date1= Cdate(day1&amp;&quot;-&quot;&amp;month1&amp;&quot;-&quot;&amp;year1)
date2= Cdate(day2&amp;&quot;-&quot;&amp;month2&amp;&quot;-&quot;&amp;year2)

<BLOCKQUOTE><font size=1 face=arial>Citando:<hr height=1 noshade>

Antes de comenzar el desarrollo de este capítulo hay que recalcar tres detalles de vital importancia. El primero de ellos es que cada vez que se desee establecer una condición referida a un campo de texto la condición de búsqueda debe ir encerrada entre comillas simples; la segunda es que no se posible establecer condiciones de búsqueda en los campos memo y; la tercera y última hace referencia a las fechas. Las fechas se deben escribir siempre en formato mm-dd-aa en donde mm representa el mes, dd el día y aa el año, hay que prestar atención a los separadores -no sirve la separación habitual de la barra (/), hay que utilizar el guión (-) y además la fecha debe ir encerrada entre almohadillas (#). Por ejemplo si deseamos referirnos al día 3 de Septiembre de 1995 deberemos hacerlo de la siguente forma; #09-03-95# ó #9-3-95#.



[/QUOTE]

por lo cual creo que debes sustituir las/ por los -

eso lo encontre en

http://www.maestrosdelweb.com/tutoriales/sql/sql_3.asp


espero q te sirva

salu2 :) ;)

<embed src="http://www.autocar.com.mx/images/logo.swf" type="application/x-shockwave-flash" width="468" height="60" play="true" wmode="transparent" menu="false" loop="true">
  #9 (permalink)  
Antiguo 06/01/2002, 16:18
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

cada vez se me vuelve esto mas extraño.... y estoy seguro que debe ser un error bien elemental. Pues bien, lo que me ponías de las fechas en realidad ya lo sabía, pero curiosamente en la base los registros se estan guardando asi:

20/12/01 10:31:17 a.m.

con las diagonales y la hora, todo dentro del campo llamado fecha. Entonces verifiqué como estaba declarado el campo y ví que era Fecha/Hora, por lo que concluí que se podian usar los guiones o diagonales.... Para hacerlo mas extraño, en access hago la consulta usando los mismos criterios (es decir, la misma fecha inicial y final) y siempre me ignora la fecha final (date2).... a pesar que hay 2 registros con el valor igual a date2... no tengo idea que esta pasando..
  #10 (permalink)  
Antiguo 06/01/2002, 21:07
 
Fecha de Ingreso: agosto-2001
Mensajes: 399
Antigüedad: 22 años, 9 meses
Puntos: 0
Re: leer registro de fecha/hora

probastes con FORMATDATETIME???, a lo mejor de algo sirve ;)
  #11 (permalink)  
Antiguo 06/01/2002, 22:37
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

gracias , como se usa?
  #12 (permalink)  
Antiguo 07/01/2002, 02:24
Avatar de TomaHawkk  
Fecha de Ingreso: diciembre-2001
Ubicación: España
Mensajes: 422
Antigüedad: 22 años, 6 meses
Puntos: 1
Re: leer registro de fecha/hora

Si la base de datos esta en SQL server,las &quot;#&quot; no sirven,las fechas van entre comillas simples.
  #13 (permalink)  
Antiguo 07/01/2002, 02:28
Avatar de TomaHawkk  
Fecha de Ingreso: diciembre-2001
Ubicación: España
Mensajes: 422
Antigüedad: 22 años, 6 meses
Puntos: 1
Re: leer registro de fecha/hora

En lugar de:

SELECT * FROM tabla WHERE fecha between #&quot;&amp;date1&amp;&quot;# and #&quot;&amp;date2&amp;&quot;# and language='&quot;&amp;lang&amp;&quot;' ORDER BY ID&quot; )

puedes probar con:

SELECT * FROM tabla WHERE fecha &gt;= #&quot;&amp;date1&amp;&quot;# and fecha &lt;= #&quot;&amp;date2&amp;&quot;# and language='&quot;&amp;lang&amp;&quot;' ORDER BY ID&quot; )

  #14 (permalink)  
Antiguo 07/01/2002, 02:35
Avatar de ivan02  
Fecha de Ingreso: diciembre-2001
Mensajes: 449
Antigüedad: 22 años, 5 meses
Puntos: 2
Re: leer registro de fecha/hora

&lt;%=Now()%&gt; fecha y hora
  #15 (permalink)  
Antiguo 07/01/2002, 07:18
XaRoD
Invitado
 
Mensajes: n/a
Puntos:
Re: leer registro de fecha/hora

Muchas veces, y sobre todo con access, cuando haces consultas de fechas debes cambiar la posición del mes por la del día, es decir mm/dd/aaaa
Prueba de esta manera.

Suerte
  #16 (permalink)  
Antiguo 07/01/2002, 10:58
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

ok, he probado lo de invertir mes y dia pero sigue igual (????). No se, pero hago la consulta en access y siempre me ignora la date2. (más ?????)

En access, la sentencia en sql queda asi:
SELECT tabla.fecha
FROM tabla
WHERE (((tabla.fecha) Between #12/15/2001# And #12/20/2001#)) sin el order by ID

pero me ignora el 20/12/2001, solo me saca los resultados hasta el 19/12/2001.

no sé, no entiendo. Si alguien se anima, le puedo mandar la base por correo para que trate de ver qué pasa, porque de verdad que esto se me esta volviendo un completo misterio.

gracias a todos.
  #17 (permalink)  
Antiguo 07/01/2002, 11:42
XaRoD
Invitado
 
Mensajes: n/a
Puntos:
Re: leer registro de fecha/hora

Puede ser que al tener la fecha en tu base de datos en formato largo (con la hora) el between la incluya, y por ello no te muestra los datos del dia 20, porque seguro que todos pasan de la hora 00:00 . Si sólo es eso haz la consulta para un día más y mira si los resultados son los correctos.

Suerte
  #18 (permalink)  
Antiguo 07/01/2002, 11:50
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

correcto, aumentándole un dia sí me funciona, pero me da algo de miedo que en algún momento me presente resultados incorrectos. Pero efectivamente aumentándole un dia sí funciona. ¿¿Alguna sugerencia más??

GRACIAS a todos los que se han tomado el tiempo de opinar.

Slds
  #19 (permalink)  
Antiguo 07/01/2002, 12:21
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

urjose, algo mas que me sugieras?

gracias!

  #20 (permalink)  
Antiguo 07/01/2002, 15:16
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: leer registro de fecha/hora

oye dices que estas guardaando en la base de datos asi
20/12/01 10:31:17 a.m.

por que no comparaas las fechas como lo estas haciendo y ademas le agregas la hora es decir que tome desde las 0:00:00 a.m. de la fecha que le estas ingresando?

salu2

<embed src="http://www.autocar.com.mx/images/logo.swf" type="application/x-shockwave-flash" width="468" height="60" play="true" wmode="transparent" menu="false" loop="true">
  #21 (permalink)  
Antiguo 07/01/2002, 15:26
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

hijole, pues.... no se como se hace. ¿cómo lo hago? aunque he de decirte que en realidad no me han pedido que despliegue registros en base a la hora, sino solamente en base a la fecha. He de decirte también que la base de datos la hace una tercera persona con la cual no tengo comunicacion, y la verdad esté difícil que le pueda decir que no me ponga la hora en el registro, la cual la verdad creo que sería la solucion ideal.....

gracias nuevamente por tu ayuda.
  #22 (permalink)  
Antiguo 07/01/2002, 15:39
Avatar de urjose  
Fecha de Ingreso: diciembre-2001
Mensajes: 5.286
Antigüedad: 22 años, 5 meses
Puntos: 1
Re: leer registro de fecha/hora

pues en realidad no se como se haga fue algo que se me ocurrio en el momento, jeje pero supongo que cuando declaras las variables date1 y date2 agregale la fecha y la hora si me explico, es que podria ser que no te este tomando todos los valores del date1 y del date2 por la fecha

digo es algo que se me vino ahorita a la mente

seria algo asi

date1= Cdate(day1&amp;&quot;-&quot;&amp;month1&amp;&quot;-&quot;&amp;year1) &amp; &quot; 00:00:00 a.m.&quot;
date2= Cdate(day2&amp;&quot;-&quot;&amp;month2&amp;&quot;-&quot;&amp;year2) &amp; &quot; 00:00:00 a.m.&quot;

algo asi seria cosa de que lo depuraras

salu2 :) ;)

<embed src="http://www.autocar.com.mx/images/logo.swf" type="application/x-shockwave-flash" width="468" height="60" play="true" wmode="transparent" menu="false" loop="true">
  #23 (permalink)  
Antiguo 07/01/2002, 15:41
XaRoD
Invitado
 
Mensajes: n/a
Puntos:
Re: leer registro de fecha/hora

No vas a tener problemas si pones un día más.
Como la fecha de la base de datos tiene hora, y tú comparas una fecha sin hora, te coge el primer segundo del día, es decir 00:00:00 a.m.
Y como es muy difícil (por probabilidades) que una fecha ingresada en la base de datos tenga esa hora, pues no te la devuelve porque la fecha es mayor.

La solución : añade un día más o en la fecha de comparación ponle la hora máxima del día (mm/dd/aaaa 11:59:59 p.m.)

Suerte
  #24 (permalink)  
Antiguo 07/01/2002, 21:23
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

Creo que la solución será aumentarle un dia a la fecha. Creo que tiene sentido lo que dice XaRoD.

gracias a todos.
  #25 (permalink)  
Antiguo 10/01/2002, 23:44
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

desgraciadamente no le pude dar continuidad a esto anteriormente, así que hasta ahorita he podido probar lo que me sugerian. He aumentado un dia al date2 y todo va bien hasta que pruebo una fecha como por ejemplo 31/10/2001 : si sumo un dia se convierte en 32/10/2001.... con el evidente error, ya que no hay un mes con 32 dias .... La unica solucion que le veo es poder incluir en la consulta, no solo la fecha, sino tambien la hora. Alguien sabe como hacerlo???

ejemplo de registros:
26/01/02 02:35:10 p.m.
31/10/01 08:00:15 p.m.
02/12/01 04:31:24 a.m.

gracias
  #26 (permalink)  
Antiguo 11/01/2002, 07:16
XaRoD
Invitado
 
Mensajes: n/a
Puntos:
Re: leer registro de fecha/hora

En teoria si que puedes hacer una consulta incluyendo la hora, pero... ¿Por qué esos problemas para sumar un día? Utiliza la funcion del VB DateAdd para sumar fechas:
&lt;%
tu_fecha=&quot;31/12/2001&quot;
nueva_fecha = DateAdd(&quot;d&quot;, 1, tu_fecha)
%&gt;
Con esto nueva_fecha será 01/01/2002

Mírate este enlace
<a href='ir.asp?http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vtoriVBScript.asp' target='_blank'>http://msdn.microsoft.com/library/defaul...</a>

Salu2
  #27 (permalink)  
Antiguo 11/01/2002, 11:56
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

estoy teniendo problemas con la consulta: se me disparan los resultados cuando uso el ultimo dia del mes, usando lo que me sugerias. ¿crees que te puedo escribir a tu correo?, talvez te podría mandar los archivos que estoy usando.

gracias
  #28 (permalink)  
Antiguo 11/01/2002, 12:26
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 22 años, 7 meses
Puntos: 0
Re: leer registro de fecha/hora

ufff...
este asunto de comparacion entre fechas siempre atrae distintos problemas y a pesar de los 1000 cambios que se hagan siempre se escapa algo..
lo ke hice yo al final fue algo ke kizas tu no puedas por lo ke dices (agregar un campo mas) donde el dato de fecha con una funcion lo paso a un valor numerico tipo long y despues pregunto por los valores de esos campos y no los de fecha.
  #29 (permalink)  
Antiguo 11/01/2002, 12:35
XaRoD
Invitado
 
Mensajes: n/a
Puntos:
Re: leer registro de fecha/hora

Si, realmente son engorrosas las fechas en access. Siempre anda mutando el mes por el dia y viceversa, y nunca se sabe cuando se hace bien.

rodvilleda, yo no te puedo ayudar mas de lo que tu hagas. Lo que te queda es probar las distintas combinaciones, es decir mm/dd/aaaa , dd/mm/aaaa, comprobar las fechas, etc...

Suerte

  #30 (permalink)  
Antiguo 11/01/2002, 12:49
Avatar de rodvilleda  
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 5 meses
Puntos: 0
Re: leer registro de fecha/hora

ok, gracias Xarod, no te preocupes todo esta bien. Haré cambios con fecha y mes a ver que pasa. Gracias a todos.
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 14:03.