Error en procedure mysql

Hola. Tengo contrado un VPS y al añadir este procedimento a la BD me sale un error.

-- Volcando estructura para procedimiento bundles.MostrarBundlesPorTitulo
DELIMITER //
CREATE DEFINER=`juanb`@`localhost` PROCEDURE `MostrarBundlesPorTitulo`(IN `s` Varchar(255), IN `Pagina` INT, IN `NumeroRegistros` INT)
BEGIN
Declare NumRegistrosTotales INT;
Declare Desde INT;

Set NumRegistrosTotales = ContarBundlesPorTitulo(s);

Set Desde = (Pagina -1) * NumeroRegistros;

Select wp_posts.* From wp_posts where post_title like CONCAT('%', s , '%') Limit Desde, NumeroRegistros;
END//
DELIMITER ;

Me sale un error en la linea del select. Justamente aqui: "Limit Desde, NumeroRegistros ;"

En el xamp local funciona correctamente.

Xamp local -> MariaDB
VPS -> Mysql 5.1.3 (Centos)
En algunos sitios pone numeroRegistros y en otros NumeroRegistros (n minúscula y mayúscula).
Igual tu local eso se lo traga, pero tu VPN lo dudo.

De todas formas, qué error te da?
sexto escribió:En algunos sitios pone numeroRegistros y en otros NumeroRegistros (n minúscula y mayúscula).
Igual tu local eso se lo traga, pero tu VPN lo dudo.

De todas formas, qué error te da?


Ya lo he cambiado.

Me da esto :

Error de SQL (1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Desde, NumeroRegistros ;END' at line 16
alex120 escribió:
sexto escribió:En algunos sitios pone numeroRegistros y en otros NumeroRegistros (n minúscula y mayúscula).
Igual tu local eso se lo traga, pero tu VPN lo dudo.

De todas formas, qué error te da?


Ya lo he cambiado.

Me da esto :

Error de SQL (1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Desde, NumeroRegistros ;END' at line 16

Mirándolo rápido:
Después de NumeroRegistros tienes ESPACIO_EN_BLANCO ; ¿No será ese el error de sintáxis no?
Newton escribió:
alex120 escribió:
sexto escribió:En algunos sitios pone numeroRegistros y en otros NumeroRegistros (n minúscula y mayúscula).
Igual tu local eso se lo traga, pero tu VPN lo dudo.

De todas formas, qué error te da?


Ya lo he cambiado.

Me da esto :

Error de SQL (1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Desde, NumeroRegistros ;END' at line 16

Mirándolo rápido:
Después de NumeroRegistros tienes ESPACIO_EN_BLANCO ; ¿No será ese el error de sintáxis no?


Lo he probado, y tampoco es eso.

Por cierto si en vez de esto:
Select wp_posts.* From wp_posts where post_title like CONCAT('%', s , '%') Limit Desde, NumeroRegistros;

pongo esto:
Select wp_posts.* From wp_posts where post_title like CONCAT('%', s , '%') Limit 23,15;

Funciona.
sexto escribió:http://stackoverflow.com/questions/11342961/stored-procedure-using-variable-in-limit-expression


Vale, ya veo donde esta el problema.

O uso prepare

O actualizado a la version 5.6

Estoy intentando actualizar a la version 5.6, me salen unos errores de dependencias. Lo mirare.

Gracias
6 respuestas