1

Im trying to create a procedure to search a table depending on the search entries from the user and display them. I get a duplicate parameter error in p_brand in my procedure.

HERE IS THE CODE


-- Routine DDL -- Note: comments before and after the routine body will not be stored by the server


DELIMITER $$

CREATE DEFINER=`root`@`localhost` PROCEDURE `MAS_pSearchinventory`
(
IN          p_Category          VARCHAR(20),
IN          p_Brand             VARCHAR(20),
IN          P_Model             varchar(20),
IN          p_Pricefrom         INT(20),
IN          p_Priceto           INT(20),
OUT         p_Product           varchar(30),    
OUT         p_Brand             varchar(30),    
OUT         p_Model             varchar(30),    
OUT         p_Series            varchar(30), 
OUT         p_Color             varchar(30),    
OUT         p_MotherBoard       varchar(30),    
OUT         p_Processor         varchar(30),    
OUT         p_Ram               varchar(30),    
OUT         p_ScreenType        varchar(30),    
OUT         p_ScreenSize        varchar(30),    
OUT         p_OpticalDiskdrive  varchar(30),    
OUT         p_Usb               varchar(30),    
OUT         p_ModemEthernet     varchar(30),    
OUT         p_Bluetooth         varchar(30),    
OUT         p_TVOutput          varchar(30),    
OUT         p_SoundCard         varchar(30),    
OUT         p_KeyboardAndMouse  LONGTEXT,
OUT         p_Accessories       LONGTEXT, 
OUT         p_OperatingSystem   varchar(30),    
OUT         p_GraphicsCard      varchar(30),    
OUT         p_ScreenResolution  varchar(30),    
OUT         p_HardDrive         varchar(30),    
OUT         p_MemoryCardReader  varchar(30),    
OUT         p_Wifi              varchar(30),    
OUT         p_AudioInterface    varchar(30),    
OUT         p_ExpantionCardSlot varchar(30),    
OUT         p_Webcam            varchar(30),    
OUT         p_Battery           varchar(30),    
OUT         p_SoftwareIncluded  varchar(30),    
OUT         p_Price             varchar(30),    
OUT         p_Discount          varchar(30),    
OUT         p_HomeDelivery      varchar(30),
OUT         p_FileName          varchar(100),
OUT         p_Result            varchar(100)

)

BEGIN

SELECT
Product,Brand,Model,Series,Color,MotherBoard,         
               Processor,                 
               Ram,                           
               ScreenType,                
               ScreenSize,                
               OpticalDiskdrive,            
               Usb,                           
               ModemEthernet,             
               Bluetooth,                 
               TV   put,                      
               SoundCard,                 
               KeyboardAndMouse,     
               Accessories,             
               OperatingSystem,               
               GraphicsCard,                  
               ScreenResolution,              
               HardDrive,                 
               MemoryCardReader,              
               Wifi,                          
               AudioInterface,            
               ExpantionCardSlot,           
               Webcam,                    
               Battery,                       
               SoftwareIncluded,              
               Price,                     
               Discount,                      
               HomeDelivery,              
               FileName,                  
               Result
from mas_tinsertinventorydetails
WHERE 
(
    (category=p_Category)   and
    (Brand=p_Brand)         and
    (model=p_Model)         and
    (pricefrom=p_Pricefrom) and
    (priceto=p_Priceto)

);

END
1
  • 1
    You have given the same name, p_Brand, to two parameters. Commented Oct 18, 2013 at 7:47

2 Answers 2

1

so rename the OUT p_Brand param to something else. Also p_Model

Sign up to request clarification or add additional context in comments.

Comments

0

try out this...it works fine for me..

here i have changed p_Brand to p_Brand_out and p_Model to p_Model_out

DELIMITER $$

CREATE DEFINER=`root`@`localhost` PROCEDURE `MAS_pSearchinventory`
(
IN          p_Category          VARCHAR(20),
IN          p_Brand             VARCHAR(20),
IN          P_Model             varchar(20),
IN          p_Pricefrom         INT(20),
IN          p_Priceto           INT(20),
OUT         p_Product           varchar(30),    
OUT         p_Brand_out             varchar(30),    
OUT         p_Model_out             varchar(30),    
OUT         p_Series            varchar(30), 
OUT         p_Color             varchar(30),    
OUT         p_MotherBoard       varchar(30),    
OUT         p_Processor         varchar(30),    
OUT         p_Ram               varchar(30),    
OUT         p_ScreenType        varchar(30),    
OUT         p_ScreenSize        varchar(30),    
OUT         p_OpticalDiskdrive  varchar(30),    
OUT         p_Usb               varchar(30),    
OUT         p_ModemEthernet     varchar(30),    
OUT         p_Bluetooth         varchar(30),    
OUT         p_TVOutput          varchar(30),    
OUT         p_SoundCard         varchar(30),    
OUT         p_KeyboardAndMouse  LONGTEXT,
OUT         p_Accessories       LONGTEXT, 
OUT         p_OperatingSystem   varchar(30),    
OUT         p_GraphicsCard      varchar(30),    
OUT         p_ScreenResolution  varchar(30),    
OUT         p_HardDrive         varchar(30),    
OUT         p_MemoryCardReader  varchar(30),    
OUT         p_Wifi              varchar(30),    
OUT         p_AudioInterface    varchar(30),    
OUT         p_ExpantionCardSlot varchar(30),    
OUT         p_Webcam            varchar(30),    
OUT         p_Battery           varchar(30),    
OUT         p_SoftwareIncluded  varchar(30),    
OUT         p_Price             varchar(30),    
OUT         p_Discount          varchar(30),    
OUT         p_HomeDelivery      varchar(30),
OUT         p_FileName          varchar(100),
OUT         p_Result            varchar(100)

)

BEGIN

SELECT
Product,Brand,Model,Series,Color,MotherBoard,         
               Processor,                 
               Ram,                           
               ScreenType,                
               ScreenSize,                
               OpticalDiskdrive,            
               Usb,                           
               ModemEthernet,             
               Bluetooth,                 
               TV   put,                      
               SoundCard,                 
               KeyboardAndMouse,     
               Accessories,             
               OperatingSystem,               
               GraphicsCard,                  
               ScreenResolution,              
               HardDrive,                 
               MemoryCardReader,              
               Wifi,                          
               AudioInterface,            
               ExpantionCardSlot,           
               Webcam,                    
               Battery,                       
               SoftwareIncluded,              
               Price,                     
               Discount,                      
               HomeDelivery,              
               FileName,                  
               Result
from mas_tinsertinventorydetails
WHERE 
(
    (category=p_Category)   and
    (Brand=p_Brand)         and
    (model=p_Model)         and
    (pricefrom=p_Pricefrom) and
    (priceto=p_Priceto)

);

END

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.