Bug #34940 Cannot Alter Stored procedures
Submitted: 28 Feb 2008 20:50 Modified: 1 Mar 2008 10:18
Reporter: Mike Hat Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / NET Severity:S2 (Serious)
Version:5.2.1 OS:Windows
Assigned to: CPU Architecture:Any

[28 Feb 2008 20:50] Mike Hat
Description:
When altering an stored procedure i get an error that says:

Parameter '@`localhost`' must be defined.

I suppose it comes from the executed code:

CREATE DEFINER = `root`@`localhost` PROCEDURE StoredProcedure3 (sarasa int) 
BEGIN
SELECT colmena.colmena_id,  apiario.ubicacion FROM colmena  LEFT JOIN apiario ON colmena.apiario_id = apiario.apiario_id WHERE apiario.apiario_id = sarasa;
END

This was working fine on 5.1.4

How to repeat:
Create a procedure then alter it
[28 Feb 2008 21:32] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/43183
[28 Feb 2008 21:34] Reggie Burnett
Fixed in 5.2.2
[1 Mar 2008 10:18] MC Brown
A note has been added to the 5.2.2 changelog: 

When creating a new stored procedured, the new parameter code which allows the use of the @ symbol would interfere with the specification of a DEFINER.