我有一个带有 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))
但是当我这样做时,存储过程仍然认为传递的第一个值是a,第二个值是c。
这里有什么问题?