none
problema con consulta procedimiento almacenado busqueda RRS feed

  • Pregunta

  • asp.net

    myql

    buenas tardes 

    amigos del foro tengo un problema nuevamente si alguien me puede ayudar por fa tengo un formulario de búsqueda de productos 

    tengo un procedimiento almacenado que me busque por descripcion el productos cualquier producto con cualquier palabra

    este mi procedimiento 

    este el error Operand should contain 1 column(s)

    CREATE DEFINER=`root`@`localhost` PROCEDURE `SP_BuscarProductoDescripcion`(IN mi_descripcion VARCHAR(45))
    BEGIN
    SELECT Cod_Producto,Descripcion,Precio_Unitario,Proveedor
    FROM Productoscotizados
    WHERE Concat ( Productoscotizados.Cod_Producto, ' ' , Productoscotizados.Descripcion , ' ',Productoscotizados.Precio_Unitario ,' ' ,Productoscotizados.Proveedor ) LIKE ('%',mi_descripcion,'%') ;
    END

    martes, 16 de junio de 2015 17:19

Respuestas

  • hola

    el tema es que no puedes concaternar en el where

    deberia ser algo como

    SELECT Cod_Producto, Descripcion, Precio_Unitario, Proveedor
    FROM Productoscotizados
    WHERE Cod_Producto LIKE CONCAT('%',mi_descripcion,'%')
    		OR Descripcion LIKE CONCAT('%',mi_descripcion,'%')
    		OR Precio_Unitario LIKE CONCAT('%',mi_descripcion,'%')
    		OR Proveedor LIKE CONCAT('%',mi_descripcion,'%')

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta djnilo martes, 16 de junio de 2015 19:32
    martes, 16 de junio de 2015 19:00

Todas las respuestas

  • hola

    podria usar algo como ser

    DataTabla dt = new DataTable(); 
    using (MySqlConnection conn = new MySqlConnection("connectionstring")) 
    { 
    	MySqlCommand cmd = new MySqlCommand("SP_BuscarProductoDescripcion", conn);     
    	cmd.CommandType = SqlCommandType.StoredProcedure; 
    
    	cmd.Parameters.AddWithValue("?mi_descripcion", valor);
    	
    	MySqlDataAdapter da = new MySqlDataAdapter(cmd);     
    	da.Fill(dt); 
    }

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 16 de junio de 2015 17:57
  • mi error es el procedimiento almacenado leandro ?
    martes, 16 de junio de 2015 18:06
  • hola

    el tema es que no puedes concaternar en el where

    deberia ser algo como

    SELECT Cod_Producto, Descripcion, Precio_Unitario, Proveedor
    FROM Productoscotizados
    WHERE Cod_Producto LIKE CONCAT('%',mi_descripcion,'%')
    		OR Descripcion LIKE CONCAT('%',mi_descripcion,'%')
    		OR Precio_Unitario LIKE CONCAT('%',mi_descripcion,'%')
    		OR Proveedor LIKE CONCAT('%',mi_descripcion,'%')

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta djnilo martes, 16 de junio de 2015 19:32
    martes, 16 de junio de 2015 19:00
  • gracias por responder tan rapidamente
    martes, 16 de junio de 2015 19:32