none
Problema en consulta RRS feed

  • 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

    viernes, 3 de febrero de 2017 12:39

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

    viernes, 3 de febrero de 2017 12:59
    Moderador

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

    viernes, 3 de febrero de 2017 12:59
    Moderador
  • 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


    viernes, 3 de febrero de 2017 13:13