So what happens when you use a negative value in a LIMIT clause? Will there be negative consequences (slight pun intended)?
I don’t see any documentation on this, and MySQL forums, as I recall, sux.
Background:
I’m using MySQL CE 5.5.20. I wrote a stored procedure that take an int parameter and uses it for the LIMIT clause. I needed a way to return all rows if I wanted, so I tried passing in -1 for the limit parameter in my store procedure/routine, and that worked.
According to the documentation, it must be a non-negative integer
It sounds to me like what you are experiencing is an undocumented bug, in that mysql should throw an error if the parameters are not inline with what the documentation requires.
My suggestion would be to use syntactically corrected SQL in your stored procedure. You could still use a negative int as a flag to show all though. Something like this