在过去的某个时候,在我的VB6时代,我记得能够创建一个sql命令对象(不一定与今天的.NET flavor相同),并自动获得sql参数填充进来。查找SQLCommand的SQLParameters
这让我做一些事情,比如只传递我肯定知道存在的参数,如果两个不同的客户端使用不同版本的数据库,我可以调用我的过程,知道我仍然会得到有意义的回应
事情是这样的:
Dim cmd as SqlCommand
Set cmd = New SqlCommand(Connection)
cmd.CommandText = "MagicStoredProcedure"
cmd.CommandType = CommandType.StoredProcedure
If cmd.Parameters.Count > 0 Then
If cmd.Parameters(0).Name = "@FirstParameter" Then
cmd.Parameters("@FirstParameter").Value = someValue
End If
End If
Dim r as Recordset
Set r = cmd.ExecuteRecordset()
我记得这样做,但我无法找到我自己的任何例子,试图做到这一点.NET中似乎并没有在所有的工作。我见过的所有例子(以及我搜索了一段时间)手动添加参数。
任何指针?
你不需要参数名称中的'@'前缀吗? –
@Uri你是绝对正确的。固定。 – Jonathan