Joe*_*ran 1 c# sql vb.net sql-server stored-procedures
我有一个存储过程,它有3个参数:让我们调用它们@a,@b,@c,所有都是可选的.
在存储过程中,它们使用以下顺序定义: @a,@b,@c
基于我迄今为止的研究,从.NET代码我应该能够以任何顺序调用它们:
例如:
.Add(New OleDbParameter("@c", OleDbType.Integer, 4, ParameterDirection.Input, False, 0, 0, "c", DataRowVersion.Current, c))
.Add(New OleDbParameter("@a", OleDbType.Integer, 4, ParameterDirection.Input, False, 0, 0, "a", DataRowVersion.Current, a))
Run Code Online (Sandbox Code Playgroud)
但是当我这样做时,存储过程仍然认为传递的第一个值是a,第二个值是c.
这有什么不对?