Principales respuestas
Problema en consulta

Pregunta
-
Buenas Tardes
Amigos tengo un problema y e sque no me arroja ningun dato pero si lo hago en la BD si existe datos
DateTime fecha_desde = dateTimePicker1.Value.Date; DateTime fecha_hasta = dateTimePicker2.Value.Date; #region PEDidos using (MySqlConnection cnped2 = new MySqlConnection(CadenaConexionGestion)) { cnped2.Open(); string querycomenert2 = @"select p.pedidokey from (select pedidokey, formaped from poee where formaped= 1 and fecha_finaliza between '" + fecha_desde + "' and DATE_ADD('"+ fecha_hasta + "', INTERVAL 1 DAY)) as p inner join txgl.pedidomov d on d.pedidokey= p.pedidokey"; MySqlCommand comandocomen2 = new MySqlCommand(querycomenert2, cnped2); MySqlDataReader readercomen = comandocomen2.ExecuteReader(); while (readercomen.Read()) { total1 = total1 + 1; } readercomen.Close(); cnped2.Close(); }
que puede estar mal
saludos
ruben
Respuestas
-
Hola, debes usar consultas parametrizadas. Lo de concatenar la query es una mala practica.
Te paso un ejemplo
string querycomenert2 = @"select p.pedidokey from (select pedidokey, formaped from poee where formaped= 1 and fecha_finaliza between @fecha_desde and DATE_ADD(@fecha_hasta, INTERVAL 1 DAY)) as p inner join txgl.pedidomov d on d.pedidokey= p.pedidokey"; MySqlCommand comandocomen2 = new MySqlCommand(querycomenert2, cnped2); comandocomen2.Parameters.AddWithValue("@fecha_desde", fecha_desde); comandocomen2.Parameters.AddWithValue("@fecha_hasta" , fecha_hasta);
Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos
- Propuesto como respuesta Joyce_ACModerator viernes, 3 de febrero de 2017 15:34
- Marcado como respuesta Joyce_ACModerator viernes, 10 de febrero de 2017 15:10
Todas las respuestas
-
Hola, debes usar consultas parametrizadas. Lo de concatenar la query es una mala practica.
Te paso un ejemplo
string querycomenert2 = @"select p.pedidokey from (select pedidokey, formaped from poee where formaped= 1 and fecha_finaliza between @fecha_desde and DATE_ADD(@fecha_hasta, INTERVAL 1 DAY)) as p inner join txgl.pedidomov d on d.pedidokey= p.pedidokey"; MySqlCommand comandocomen2 = new MySqlCommand(querycomenert2, cnped2); comandocomen2.Parameters.AddWithValue("@fecha_desde", fecha_desde); comandocomen2.Parameters.AddWithValue("@fecha_hasta" , fecha_hasta);
Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos
- Propuesto como respuesta Joyce_ACModerator viernes, 3 de febrero de 2017 15:34
- Marcado como respuesta Joyce_ACModerator viernes, 10 de febrero de 2017 15:10
-
hola
esto ya lo planteaste en la pregunta anterior
Error la cadena no tiene formato correcto
porque dejaste de usar prametros? concatenar las fechas en el string es una pesima idea
si antes usabas parametros porque dejaste de usarlos ?
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Editado Leandro TuttiniMVP viernes, 3 de febrero de 2017 13:13