【发布时间】:2010-07-14 10:23:48
【问题描述】:
我发现在我的项目中命名参数的顺序是有意义的。
我调用这个过程
CREATE PROCEDURE `test`.`TestProc` (
in myText varchar (5),
in myText2 varchar (100)
)
BEGIN
END
如果我添加这样的参数:
command.CommandText = "testProc";
command.CommandType = System.Data.CommandType.StoredProcedure;
command.Parameters.AddWithValue("myText2", "aaaaaaaaaaaaaaaaa");
command.Parameters.AddWithValue("myText", "bbbb");
我收到“数据太长”异常。我也无法在测试项目中重现这个。
有什么想法吗?
我找到了原因。看起来像 MySql .Nat 数据提供程序中的错误。 要重现错误,您需要不在 root 用户下调用它。
结论:MySql.Data 版本 6.2.3.0。 如果您使用非 root 数据库帐户调用过程,则命名参数的顺序是有意义的
【问题讨论】: