C sharp - error al filtrar una consulta por fecha en C#

 
Vista:
sin imagen de perfil
Val: 8
Ha aumentado su posición en 17 puestos en C sharp (en relación al último mes)
Gráfica de C sharp

error al filtrar una consulta por fecha en C#

Publicado por Lucas Santiago (5 intervenciones) el 02/03/2017 21:17:25
Hola chicos, buestas tardes.
Me llamo Lucas de Cordoba, me dirijo a ustedes por que tengo un problema.
hace relativamente poco comence con C#, y me toco reescribir un programita que tenia en fox.
hasta ahora todo bien, hasta que intento hacer una consulta filtrada por fecha:
por elemplo mi bases de datos esta hecha en ACCESS 2007
con esta estructura:
fecha : Fecha/Hora
detalle : Texto
Ingreso :moneda
egreso: Moneda.

deseo cargar en un datagrid los registros que sean iguales a una fecha X
pero me da error que no coinciden los tipos, pero si no utilizo la clausula WHERE, si me carga los datos.


string ff=this.dateTimePicker3.Value.ToShortDateString();

string consul = "SELECT * FROM Movimientos WHERE fecha BETWEEN '" + ff + "' AND '" + ff + "'";

OleDbDataAdapter da = new OleDbDataAdapter(consul, conn);
DataTable ds = new DataTable ();


da.Fill(ds);
this.dataGridView1.DataSource = ds;
estuve revisando codigo en internet, y no logro hacer que funcione.
conclusiones:
* Solo funciona con conexciones SQL
* podria estar la falla en el formato que me agrega la hora junto con la fecha
* o deberia modificar el campo de mi base de datos para que no guarde fecha.

como me dice error que no coinciden los tipos pense que estaba compadrando un valor Fecha con uno string.
en fin, cualquier ayuda la agradeceria...
muchisimas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Wilfredo Patricio Castillo
Val: 707
Oro
Ha mantenido su posición en C sharp (en relación al último mes)
Gráfica de C sharp

error al filtrar una consulta por fecha en C#

Publicado por Wilfredo Patricio Castillo (416 intervenciones) el 03/03/2017 19:31:28
El mensaje de error es específico, los tipos de dato no coinciden, porque estás tratando de comparar un campo de tipo fecha con uno de tipo string.

Entonces debe declarar tu variable de tipo datetime;

datetime ff=(datetime)dateTimePicker3.Value;

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

error al filtrar una consulta por fecha en C#

Publicado por SEBASTIAN (4 intervenciones) el 03/03/2017 23:45:01
yo pienso que lo primero que deberias hacer es imprimir la variable que guarda el sql y despues ejecutarla en sql server o mysql
para ver en donde esta fallando.


segundo te recomiento que las fechas siempres las manejes en las clases de tipo string no de tipo date para que no tengas conflictos de estar parseandolas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar