在通过vb.net执行存储过程时,我有点新手。但是,我想知道是否有人知道如何在我的数据库类中创建一个函数来接受SP名称和一个未知数量的参数及其相关值来对SQL数据库执行。
这将允许执行任何存储过程,以便在我的类中使用相同的函数恢复数据表。
任何帮助都会很棒。我知道有一个SqlParamaterCollection或者我可以使用参数数组吗?
答案 0 :(得分:0)
您可以通过为可能未传入的参数添加默认值来完成此操作。
W3Schools对此here
有很好的解释如果在vb.net中没有回答您关于如何执行此操作的问题,有几种方法可以在代码中处理此问题。最简单的是if语句。
if (there is a value to pass in then) then
command.parameters.addwithvalue("@Parameter", your value)
endif
答案 1 :(得分:0)
这就是我正在做的事情:
Public Sub CallSproc(SprocName As String, Server As String, Database As String, Optional ParameterArray(,) As String = Nothing)
只需创建一个二维数组即可传递给传递参数名称和值的子数据。我使用ubound将它们分开,这将告诉你数组中有多少参数。