Bug #35099 "parameter @'localhost' must be defined" error when issuing CREATE USER..
Submitted: 6 Mar 2008 9:32 Modified: 7 Mar 2008 21:48
Reporter: Lars Ole Avery Simonsen Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / NET Severity:S1 (Critical)
Version:5.2.1.0 OS:Windows (xp sp2)
Assigned to: CPU Architecture:Any
Tags: @, create user, grant, Parameter

[6 Mar 2008 9:32] Lars Ole Avery Simonsen
Description:
With

MySQL connector .NET 5.2.1.0
MySQL server 5.0.24a-community-nt

The command

CREATE USER 'localuser'@'localhost' IDENTIFIED BY PASSWORD '*1CF04369A6C715D623F6343F6C4DEA93CAA5EEC8';

fails with (verbatim):

Parameter '@'localhost'' must be defined. 

The same command works fine in the MySQL query browser. Same issue applies for any GRANT statements of the same form.

I also tried

CREATE USER localuser@localhost IDENTIFIED BY PASSWORD '*1CF04369A6C715D623F6343F6C4DEA93CAA5EEC8';

which fails identically with

Parameter '@localhost' must be defined.

How to repeat:
Should be self evident from the given description. 

Suggested fix:
Maybe the connector shouldn't treat any and all tokens preceeded by an '@' as a procedure parameter? :)
[6 Mar 2008 9:50] Lars Ole Avery Simonsen
Reverting to connector/net v5.1.5.0 solved the problem, so it must be caused by recent changes.
[7 Mar 2008 21:48] Reggie Burnett
This is already fixed in 5.2.2 (not yet released)