Foros del Web » Programación para mayores de 30 ;) » .NET »

Consulta SQL comparando campo fecha

Estas en el tema de Consulta SQL comparando campo fecha en el foro de .NET en Foros del Web. Hola, estoy realizando una web en asp .net (C#) y cuando hago una consulta de SQL contra una base de datos en ACCESS filtrando todos ...
  #1 (permalink)  
Antiguo 27/05/2005, 03:24
 
Fecha de Ingreso: marzo-2005
Mensajes: 8
Antigüedad: 19 años, 1 mes
Puntos: 0
Consulta SQL comparando campo fecha

Hola,
estoy realizando una web en asp .net (C#) y cuando hago una consulta de SQL contra una base de datos en ACCESS filtrando todos aquellos registros en los que el campo fecha sea menor a la fecha actual no me la realiza correctamente. Escribo el codigo para que lo veais mas claramente:

[C#]
-------------------------------------------------------
string SQL = "";
DateTime dataActual = DateTime.Now;

SQL = "SELECT * " +
"FROM Tabla " +
"WHERE " +
"fecha < " + DateTime.Now.ToString("MMddyyyy");
--------------------------------------------------------

He probado mil combinaciones en el formato de la fecha, colocar la fecha entre comillas simples, entre #.. y nada de nada.

¿Como se hacen las comparaciones de fecha?
  #2 (permalink)  
Antiguo 27/05/2005, 03:38
 
Fecha de Ingreso: abril-2005
Mensajes: 63
Antigüedad: 19 años
Puntos: 0
Si tu campo fecha lo guardas con tipo date... ¿Has probado a compara sin hacer casting a string? Es decir, fecha < dateTime.Now
  #3 (permalink)  
Antiguo 27/05/2005, 03:49
 
Fecha de Ingreso: marzo-2005
Mensajes: 8
Antigüedad: 19 años, 1 mes
Puntos: 0
si, me da error, debido a que dateTime.Now incluye la fecha y la hora. Por eso he tenido que dar formato a la fecha.
  #4 (permalink)  
Antiguo 27/05/2005, 04:28
 
Fecha de Ingreso: abril-2005
Mensajes: 63
Antigüedad: 19 años
Puntos: 0
mmmmmmmmmmmm en vez del método now prueba con Today (dateTime.Today) este devuelve solo la fecha (sin hora)
  #5 (permalink)  
Antiguo 07/10/2010, 09:55
 
Fecha de Ingreso: septiembre-2010
Mensajes: 26
Antigüedad: 13 años, 7 meses
Puntos: 0
Pregunta Respuesta: Consulta SQL comparando campo fecha

Hola yo estoy desarrollando una aplicacion en C# (Windows)
y necesito validar que la fecha de nacimiento sea menor a la fecha actual...

muchas gracias!!!
  #6 (permalink)  
Antiguo 07/10/2010, 10:29
 
Fecha de Ingreso: febrero-2010
Ubicación: México
Mensajes: 738
Antigüedad: 14 años, 2 meses
Puntos: 37
Respuesta: Consulta SQL comparando campo fecha

porque la fecha actual no la tomas del mismo access? creo que se utiliza Now() y te evitas de problemas.

Saludos!
  #7 (permalink)  
Antiguo 07/10/2010, 11:08
 
Fecha de Ingreso: septiembre-2010
Mensajes: 26
Antigüedad: 13 años, 7 meses
Puntos: 0
Exclamación Respuesta: Consulta SQL comparando campo fecha

Muchas gracias lo voy a intentar...
pero no hay otra forma de hacerlo yo estoy trabajando la base de datos desde sql server, pero me gustaria hacer esa validacion desde el mismo código de C#...
o crees que me complico mucho???
es que todas las validaciones la he realizado así...

GRACIAS :pensando
  #8 (permalink)  
Antiguo 07/10/2010, 12:23
 
Fecha de Ingreso: febrero-2010
Ubicación: México
Mensajes: 738
Antigüedad: 14 años, 2 meses
Puntos: 37
Respuesta: Consulta SQL comparando campo fecha

En sql server es algo como getDate().

Prueba con algo similar a esto:

Código C:
Ver original
  1. SQL = "SELECT * " +
  2. "FROM Tabla " +
  3. "WHERE " +
  4. "fecha < " + getDate();
  #9 (permalink)  
Antiguo 07/10/2010, 14:12
Avatar de devilinside  
Fecha de Ingreso: marzo-2008
Ubicación: En Perú
Mensajes: 73
Antigüedad: 16 años, 1 mes
Puntos: 6
Respuesta: Consulta SQL comparando campo fecha

Intenta colocando la fecha entre comillas simples de la siguiente manera:

SQL = "SELECT * " +
"FROM Tabla " +
"WHERE " +
"fecha < '" + DateTime.Now.ToString("MMddyyyy")+"'";

y si eso no funciona revisa el formato en que DateTime.Now.ToString("MMddyyyy") devuelve la fecha y compáralo con las fechas que tienes almacenadas. a lo mejor estácolocando el mes en lugar del día y viceversa. ;)
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 13:46.