Error de sintasix en PROCEDURE Hola este es mi procedure
Código MySQL:
Ver originalDELIMITER ;; PREPARE stmt FROM "SELECT PRODUCTO FROM PRODUCTOS WHERE PRODUCTO LIKE ? LIMIT 0,10;"; EXECUTE stmt USING @INFO ; INSERT INTO BUSQUEDA (ID ,USUARIO ,DATOS ,FECHA ,IP ) VALUES ('',USUARIO ,DATOS ,FECHA ,IP ); SET @INI =(PAGINA *RESULTPORPAG )-RESULTPORPAG ; SET @CONSTRUYE =CONCAT('SELECT ID,PRODUCTO,DESCRIPCION, FORMAT((((((COSTOVENTA*',dolar,')*',iva,')+ ((COSTOVENTA*',dolar,')))*(UTILIDAD/100))+ (((COSTOVENTA*',dolar,')*',iva,')+ ((COSTOVENTA*',dolar,')))),2) AS PRECIOSINIVA, FORMAT(((((((COSTOVENTA*',dolar,')*',iva,')+ ((COSTOVENTA*',dolar,')))*(UTILIDAD/100))+ (((COSTOVENTA*',dolar,')*',iva,')+ ((COSTOVENTA*',dolar,'))))*',iva,'),2) AS IVAPAGAR, FORMAT(((((((COSTOVENTA*',dolar,')*',iva,')+ ((COSTOVENTA*',dolar,')))*(UTILIDAD/100))+ (((COSTOVENTA*',dolar,')*',iva,')+ ((COSTOVENTA*',dolar,'))))*',iva,')+ (((((COSTOVENTA*',dolar,')*',iva,')+ ((COSTOVENTA*',dolar,')))*(UTILIDAD/100))+ (((COSTOVENTA*',dolar,')*',iva,')+ ((COSTOVENTA*',dolar,')))),2) AS PRECIOCLIENT, DISPONIBILIDAD,VERSIONHIST FROM HISTPRODS,PRODUCTOS WHERE PRODUCTO LIKE ? AND (IDPROD=ID AND VERSION=VERSIONHIST) LIMIT ?, ?;'); PREPARE stmt FROM @CONSTRUYE ; EXECUTE stmt USING @INFO , @INI , @FIN ; INSERT INTO BUSQUEDA (ID ,USUARIO ,DATOS ,FECHA ,IP ) VALUES ('',USUARIO ,DATOS ,FECHA ,IP ); SET @INI =(PAGINA *RESULTPORPAG )-RESULTPORPAG ; SET @SQLORDEN =REPLACE(INFOUNO ,",","' OR `ORDEN` ='"); SET @CONSTRUYE =CONCAT('SELECT ID,PRODUCTO,DESCRIPCION, FORMAT((((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))*(`UTILIDAD`/100))+ (((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))),2) AS `PRECIOSINIVA`, FORMAT(((((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))*(`UTILIDAD`/100))+ (((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,'))))*',iva,'),2) AS `IVAPAGAR`, FORMAT(((((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))*(`UTILIDAD`/100))+ (((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,'))))*',iva,')+ (((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))*(`UTILIDAD`/100))+ (((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))),2) AS `PRECIOCLIENT`, `DISPONIBILIDAD`,`VERSIONHIST` FROM `HISTPRODS`,`PRODUCTOS` WHERE `IDPROD`= `ID` AND `VERSION`=`VERSIONHIST` AND (`ORDEN` = '?') AND ((((((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))*(`UTILIDAD`/100))+ (((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,'))))*',iva,')+ (((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))*(`UTILIDAD`/100))+ (((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,'))))>?) AND (((((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))*(`UTILIDAD`/100))+ (((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,'))))*',iva,')+ (((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,')))*(`UTILIDAD`/100))+ (((`COSTOVENTA`*',dolar,')*',iva,')+ ((`COSTOVENTA`*',dolar,'))))<?)) ORDER BY `PRECIOCLIENT` ? LIMIT ?,?;'); PREPARE stmt FROM @CONSTRUYE ; EXECUTE stmt USING @SQLORDEN , @INFODOS ,@INFOTRES ,@INFOCUATRO ,@INI ,@FIN ; DELIMITER ;
Y este es el error:
Error en consulta (1064): Syntax error near '?') AND ((((((((`COSTOVENTA`*',dolar,')*',iva,')+ ((`' at line 49 |