我把一些对存储过程的操作保存在数据库里面,这样通过cmd.CommandText = "call mySP(1,2,3);"就可以动态执行了。
但是现在有个问题,就是我希望能够为这些存储过程加入输出参数,来返回其结果是否正确。
如果我通过cmd.CommandText = "call MySP(1,2,3,@rc);"的话,是得不到返回值@rc的,系统说我没有这个参数。
如果我通过cmd.Parameters.add的方式加入@rc的话,由于此时调用的语句是"call mySP(1,2,3);"而真正的存储过程还有一个参数,导致参数不匹配的错误。
我记得在SQLServer里面是可以做到的。不知道在MySQL里面怎样才能做到。

解决方案 »

  1.   

    call   MySP(1,2,3,@rc);select @rc;
      

  2.   

    没用的啊,执行了这条sql语句,使用text模式的mysqlcommand,我用的是cmd.ExecuteScalar()。但是最后得到的是字符串0。但是我在mysql console里面执行,这条存储过程应该返回-100的。
      

  3.   

    .net使用StoredProcedure,也得不到存储过程的输出参数,郁闷中。
    .net 传递不同名输出参数到mysql提示参数不存在
    .net 传递相同名输出参数到mysql 提示一个自动生成的输出参数为定义...